• ベストアンサー

エクセル2003 GetOpenFilenameで呼び出される階層について

エクセル2003VBAでGetOpenFilenameを使って ファイルを選択してその後の処理に用いてます。 質問なのですが GetOpenFilenameで呼び出されてくるフォルダの階層 がカレントフォルダだったと何処かで読んだ記憶があったので カレントフォルダをchdirを持ちいて必要なフォルダを呼び出せるよう しているのですが、呼び出したい階層のフォルダがネットワークに つながっているPC(サーバー機)の場合、どうしても欲しい階層が 呼び出せないのですが、どのようにしたらよいのでしょうか? また、GetOpenFilenameで呼び出されるダイアログの動きなどを 追跡(調べる方法)などあるのでしょうか? ご教授のほど宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

> GetOpenFilenameで呼び出されてくるフォルダの階層 > がカレントフォルダだったと何処かで読んだ記憶があったので その通りです。しかし、ChDir ではネットワーク上のフォルダをカレント に切り替えることはできません。 GetOpenFilename の前に次の一行を挿入してみてください。マクロが 書かれたブック(ThisWorkbook)のフォルダをカレントにします。 CreateObject("WScript.Shell").CurrentDirectory = ThisWorkbook.Path

tmgolf
質問者

お礼

お返事遅くなりました。 ご回答ありがとうございます。 このような形で呼び出せるのですね。 勉強になりました。 ありがとうございます。

その他の回答 (1)

  • deecyan
  • ベストアンサー率38% (89/233)
回答No.2

chdirは そのドライブの中の変更なので ChDrive でドライブを変更してから chdir で変更します ネットワークドライブが割り当てられていたら Z: とかで、 変更できますよ

tmgolf
質問者

お礼

なるほど、ネットワークドライブの設定でする事も できるのですね。 勉強になりました。 ありがとうございます

関連するQ&A