ExcelスプレッドシートのVBAコードからOracle DBに接続する際にエラーが発生しました。私が実行するクエリは正常に動作しますが、接続を閉じるときに次のエラーが発生します。VBAをOracleに接続するときに接続エラーが発生しました
実行時エラー3265:アイテムが要求された名前または序数に対応するコレクション内に見つかりません。
私のコードのコピーは以下の通りです。このエラーは "cn.close"行で発生します。どんな助けでも大歓迎です!
Sub GetData()
Dim cn As New ADODB.Connection
comm As New ADODB.Command
rs As New ADODB.Recordset
On Error GoTo errhandler:
cn.ConnectionString = "DSN=XXX;Uid=XXX;Password=XXX;"
cn.Open
comm.CommandType = adCmdText
comm.CommandText = "Select * from XXX where rownum < 10;"
Set comm.ActiveConnection = cn
rs.ActiveConnection = cn
rs.Open comm
Sheets("Sheet1").Range("a1").Offset(1, 0).CopyFromRecordset rs 'copy the records
rs.Close
cn.Close
errhandler:
Debug.Print (Err.Description)
Debug.Print "Error# " & cn.Errors(0).NativeError & ": " & cn.Errors(0).Description
Stop
End Sub
cn.Close行の下にExit Subを追加してください。そして「停止」を取り除く:それはそこに必要ではない。 –