Office 2007 のバージョンを使用して 32 ビット DLL をロードできないことがわかりました。Vista 64 ビットを使用しており、Office も 64 ビット モードであると想定しています。Excel を 32 ビット モードで起動することはできますか? または、VB を使用して DLL を宣言して 32 ビット DLL をロードする方法はありますか?
私が使用しているいくつかの DLL のソース コードを持っていないので、単純に 64 ビット モード用に再コンパイルすることはできません。したがって、私のオプションは、Excel を強制的に 32 ビット モードで実行するか、環境が 64 ビットであっても、使用している DLL を 32 ビット DLL として宣言することだと思います。
実際には DLL が存在するにもかかわらず、「DLL が見つかりません」というエラーが表示されます。
以下は宣言の例です。このステートメントに 32 ビット属性はありますか?
Private Declare Function ESQMain Lib "ESQuotes2.dll" Alias "_ESQMain@12" _ (ByVal func As Long, ByVal ticker_symbol As String, ByVal Result As String) As Integer