バックエンドで SQL Server に接続し、VBA を使用して MS ACCESS 2007 で記述されたアプリケーションがあります。Access と SQL Server の両方がローカルで実行されています。私のマシンは、Access 2010 と MS SQL Server Express 2008 R2 (両方とも 32 ビット、WinXP 上) を問題なく実行しています。
Access 2010 と SQL Server 2008 (R2 ではない) 64 ビットの両方を実行している別のマシン、Win7 64 ビットがあります。
64 ビット マシンで Access アプリケーションを実行すると、さまざまなデータベースを保持する SQL Server を選択するためのドロップダウン ボックスが表示されます。サーバーを選択すると、数秒後に次のエラーが表示されます。
実行時エラー '-2147024703 (800700c1)':
オートメーション エラー %1 は有効な Win32 アプリケーションではありません。
[デバッグ] オプションを選択すると、黄色の矢印は次を指します。
Set oServer = New SQLDMO.SQLServer
次の行は次のとおりです。
oServer.Connect ServerName, strSQLUser, strSQLPwd
ウォッチ リストでは、、、および strSQLPwd が、SQL Server にアクセスするための適切な値を保持しているServerName
ことがわかります。strSQLUser
これらを sqlcmd でテストしたところ、テーブルを正常にクエリできました。
誰でもこれについて私を助けてもらえますか?次に何をすべきかわかりません。