FujiiRock回答ポイント 300ptウォッチ

ExcelVBAからSQLite3へActiveX2.8を使って接続しようとしているのですが、

WinXP32bitだと接続できるのにwin7 64bitだとcn.openのときにエラーになります。
「オブジェクトが閉じている場合は、操作は許可できません。3704」

sqlite odbcドライバの64bit版はインストールし、コマンドプロンプトからは接続できます。
原因を教えていただきたくお願いいたします。

→on errorをなくすと、cn.openで「odbc driver manager データ ソース名および指定された既定のドライバが見つかりません。」となってしまいます。


On Error GoTo Err_ADO

Dim i As Long
Dim strSQL As String
Dim cn As ADODB.Connection: Set cn = New ADODB.Connection
Dim rs(5000) As ADODB.Recordset

cn.ConnectionString = "DRIVER=SQLite3 ODBC Driver;Database=" & DB_PATH
cn.Open
For i = 1 To 48000
strSQL = "select * from aaa where gaku is null limit 1000"
Set rs(i) = New ADODB.Recordset
rs(i).Open strSQL, cn, adOpenKeyset, adLockOptimistic, adCmdText

Do Until rs(i).EOF
rs(i)!GAKU = calc(rs(i)!sotu, rs(i)!uke)
rs(i).Update
rs(i).MoveNext
Loop
rs(i).Close: Set rs(i) = Nothing
Next
Err_ADO:
If Not cn Is Nothing Then cn.Close: Set cn = Nothing

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2013-09-05 23:23:36
終了日時
2013-09-06 00:35:52
回答条件
1人5回まで

この質問のカテゴリ

この質問に含まれるキーワード

ODBC115SQLite118ソースコード559コマンドプロンプト283win7358AAA765オブジェクト658インストール7094ドライバ854

人気の質問

メニュー

PC版