VBAでリンクテーブルを作成するとき「インストール可能なISAMドライバが見つかりませんでした」エラーになる場合の対処方法

投稿者: | 2016/07/26

AccessVBAで、DSNを使わないODBC経由でSQLServerに接続し、リンクテーブルを作る際に「インストール可能なISAMドライバが見つかりませんでした」エラーが発生する場合は、接続文字列の先頭に「ODBC;」を追加してやります。

"PROVIDER=MSDASQL;DRIVER={SQL Server};
SERVER=サーバー名;DATABASE=DB名;UID=ユーザーID;PWD=パスワード;”

"ODBC;PROVIDER=MSDASQL;DRIVER={SQL Server};
SERVER=サーバー名;DATABASE=DB名;UID=ユーザーID;PWD=パスワード;”

DBのオープンは上でもうまくいきましたが、リンクテーブルの作成では「インストール可能なISAMドライバが見つかりませんでした」が出ます。

ちなみに、リンクテーブルの作成はこんな感じ。

Dim tbl As DAo.TableDef

‘適当に削除
On Error Resume Next
CurrentDb.TableDefs.Delete (”リンクテーブル名”)
On Error GoTo 0

‘パスワードを保存する(2つめのパラメータ)
Set tbl = CurrentDb.CreateTableDef(“リンクテーブル名”, dbAttachSavePWD, “元テーブル名”, ”接続文字列”)
CurrentDb.TableDefs.Append tbl

‘再表示
RefreshDatabaseWindow