- ベストアンサー
エクセル2003 GetOpenFilenameで呼び出される階層について
エクセル2003VBAでGetOpenFilenameを使って ファイルを選択してその後の処理に用いてます。 質問なのですが GetOpenFilenameで呼び出されてくるフォルダの階層 がカレントフォルダだったと何処かで読んだ記憶があったので カレントフォルダをchdirを持ちいて必要なフォルダを呼び出せるよう しているのですが、呼び出したい階層のフォルダがネットワークに つながっているPC(サーバー機)の場合、どうしても欲しい階層が 呼び出せないのですが、どのようにしたらよいのでしょうか? また、GetOpenFilenameで呼び出されるダイアログの動きなどを 追跡(調べる方法)などあるのでしょうか? ご教授のほど宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> GetOpenFilenameで呼び出されてくるフォルダの階層 > がカレントフォルダだったと何処かで読んだ記憶があったので その通りです。しかし、ChDir ではネットワーク上のフォルダをカレント に切り替えることはできません。 GetOpenFilename の前に次の一行を挿入してみてください。マクロが 書かれたブック(ThisWorkbook)のフォルダをカレントにします。 CreateObject("WScript.Shell").CurrentDirectory = ThisWorkbook.Path
その他の回答 (1)
- deecyan
- ベストアンサー率38% (89/233)
chdirは そのドライブの中の変更なので ChDrive でドライブを変更してから chdir で変更します ネットワークドライブが割り当てられていたら Z: とかで、 変更できますよ
お礼
なるほど、ネットワークドライブの設定でする事も できるのですね。 勉強になりました。 ありがとうございます
お礼
お返事遅くなりました。 ご回答ありがとうございます。 このような形で呼び出せるのですね。 勉強になりました。 ありがとうございます。