Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13096 / 76734 ←次へ | 前へ→

【69147】Re:DLL を探すパスの設定
回答  sasa  - 11/5/20(金) 17:41 -

引用なし
パスワード
   ▼tenjinyama さん:
>Excel から呼ぶ関数ですが、Excel vba でどのように動的にロードが実現可能か分らないでいます。
>
>Excelのカレントフォルダに置いておけばよいのは分っているのですが、カレントフォルダの設定に制約を設けるのはトラブルの元なので、この方法は除外しました。

全然意味を理解してもらっていないようなので少し詳しくかきます。

dllファイルはもちろん任意のフォルダにあるとします。
例として ThisWorkbookと同じフォルダにxxx.dllがあると仮定して...

案1.dllのフォルダへ ChDir してdllの関数を呼ぶ。
Sub test1()
 Dim Path$
 Path = ThisWorkbook.Path
 ChDrive Path
 ChDir Path
 'ここでdllの関数を用いる
End Sub

案2.明示的にOpenイベントあたりで LoadLibrary関数(api)でdllファイルをロードする。
Private Sub Workbook_Open()
 Dim Dll$
 Dll = ThisWorkbook.Path & "\xxx.dll"
 LoadLibrary Dll
End Sub
'これ以降dllの関数はいつでも使える。
'LoadLibraryのDeclareステートメントは自分で記述してください。

7 hits

【69114】DLL を探すパスの設定 tenjinyama 11/5/18(水) 16:20 発言
【69115】Re:DLL を探すパスの設定 momo 11/5/18(水) 17:52 発言
【69116】Re:DLL を探すパスの設定 tenjinyama 11/5/18(水) 18:11 お礼
【69142】Re:DLL を探すパスの設定 sasa 11/5/20(金) 15:44 回答
【69144】Re:DLL を探すパスの設定 tenjinyama 11/5/20(金) 16:57 発言
【69147】Re:DLL を探すパスの設定 sasa 11/5/20(金) 17:41 回答
【69157】Re:DLL を探すパスの設定 tenjinyama 11/5/21(土) 0:12 お礼

13096 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free