トップ回答者
Windows10上のAccess2013からDB2 8.2.9にODBC接続したい

質問
-
Windows10上で動いているAccess2013からDB2 8.2.9にODBC接続をしたいのですが、ADO方式で試みると下記のようなエラーが出て上手くいきません。
[ODBCの呼び出しに失敗しました SQL_HANDLE_ENVでのドライバーのSQL ALLoc Handleは失敗しました]
同じコードをWindows10上のVB6とEXCELで実行すると期待した結果が返ってきます。
問題なのはWindows10上のAccess2013です。
Access2013以外は試しておりません。
期待通りWindows10上で作動したEXCELのバージョンはEXCEL2013でファイルの拡張子は.xls形式です。
コードの公開ですが、権利が私に所属していないので申し訳ありませんが非公開とさせてください。
勝手なことを言って恐縮ですが、どなたかご助言を頂ければ幸いです。
回答
-
aviator_様
掲題の問題ですが、トラブルシューティングをして解決しました。
原因ですが、Windows10上で動作するACCESSとEXCELが管理者権限で起動していなかったため、ODBC接続が出来なかったということでした。
前回、EXCEL2013でODBC接続が出来るとご報告申し上げたのは、管理者権限で起動しているVB6のプログラムからEXCELを起動していたので、VB6の管理者権限を引き継いでいたように思われます。
EXCEL2013単体で ODBC接続を試みたところ管理者権限で起動していないためODBC接続は失敗しました。
結果的にはACCESSとEXCELは管理者権限で起動するとODBC接続が出来ました。
aviator_様ご協力をありがとうございました。
報告をもってお礼と代えさせていただきます。
- 回答としてマーク 星 睦美 2016年11月15日 6:29
すべての返信
-
まず、Access2013が動作しているWindows10とVB6及びEXCELが動作しているWindows10は同じ端末でしょうか?
※別の端末で、前者の方にだけODBCドライバがインストールされていない可能性を消したい。
合わせて、ODBC接続ですと32bitか64bitというのも気になります。
※Excelは64bitでAccessは32bitが入っていたりする可能性(同じOfficeだったら問題無いですが、個別に入れていると違うかもしれません)
最後のコードの公開については、権利者が別にいらっしゃるのであればその方にどうやったら動くか確認するのが良いと思われます。
-
aviator_様
ご連絡くださり誠にありがとうございます。
ご質問の回答ですが、
Windows10(64bit)同一環境下に
Access2103(32bit)
EXCEL2013(32bit)
VB6(上に同じ)
があります。
ODBC接続は
C:¥Windows¥SysWOW64¥odbcad32.exe
を立ち上げて確認したところ、
DB2のメッセージで「接続は正常にテストされました。」と表示されます。
EXCEL2013,VB6ではODBC接続出来ますが、Access2013だけが先述のエラーが表示されて上手くいきません。
ソースの公開ですが、権利者の資産であるため公開は難しそうです。
何か方策がありましたらご教授頂けると幸いです。
-
aviator_様
掲題の問題ですが、トラブルシューティングをして解決しました。
原因ですが、Windows10上で動作するACCESSとEXCELが管理者権限で起動していなかったため、ODBC接続が出来なかったということでした。
前回、EXCEL2013でODBC接続が出来るとご報告申し上げたのは、管理者権限で起動しているVB6のプログラムからEXCELを起動していたので、VB6の管理者権限を引き継いでいたように思われます。
EXCEL2013単体で ODBC接続を試みたところ管理者権限で起動していないためODBC接続は失敗しました。
結果的にはACCESSとEXCELは管理者権限で起動するとODBC接続が出来ました。
aviator_様ご協力をありがとうございました。
報告をもってお礼と代えさせていただきます。
- 回答としてマーク 星 睦美 2016年11月15日 6:29