VBAでのOracleへの接続にてVBAでの
VBAでのOracleへの接続にてVBAでのOracleへの接続にて VBAでoo4oを利用したOracleへの接続なのですが、調べていたらエラーコードの取得方法は、
OraDataBaseオブジェクトの「LastServerErr」プロパティで取得できるようでした。
しかし、わざと存在しないユーザー名を指定して以下のコードでエラーを発生させてMsgBoxでOracleのエラーコードを表示させてみようとしましたが、MsgBoxの行を通過しているのにも関わらず何も起こりませんでした。
何が原因なのでしょうか?
参考に、以下にソースを記述しておきます。
Public Function DBOpen(pUSERPASS As String, pDSN As String, ByRef pDB As Object, ByRef pSession As Object) As Integer
On Error GoTo Error
DBOpen = -1
Set pSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDataBase = pSession.OpenDatabase(pDSN, pUSERPASS, 2) ←ここでエラーを発生させた。
mOraOpen = True
DBOpen = 0
Error:
MsgBox OraDataBase.LastServerErr ←ここに飛んだが無反応だった。
End Function回答。
>OraDataBaseに値が入っていないからエラーが出ないんじゃないですか。
では、どうすれば値を入れることができるのでしょうか?
エラーになれば、おのずと入るものだと思うからです。
お手数ですが>MsgBox OraDataBase.LastServerErr ←ここに飛んだが無反応だった。
pSession.LastServerErr
です。。
解決できました^^