特定パス(ネットワークドライブの\\192.168.1.xxx\tokutei\)の直下に現在の年度(yyyy年度)というフォルダがあるかどうかを確認して処理を進めるVBAを作ろうとしています。
※フォルダが存在しなければ作成して処理、あればそのまま処理
ネットワークドライブであるため個人によって割り当てられているドライブレターはまちまちだと思います。
このような場合、UNC形式でしか目的のフォルダまでのパスはわからないと思いますがどのように対応すれば良いのでしょうか?
ドライブレター全てを使っている人はいないという前提で割り当てがないドライブレターを取得して処理中だけそこに割り当てるという流れも考えましたがどうすればいいのかわからないので、教えてください。
net use Z: \\192.168.1.xxx\tokutei\
を実行するバッチファイルを用意しておいてVBA実行前に実行してもらい(仮に)Zドライブを作成して
(バッチファイルを添付してVBAのShell関数で実行しても良いが非同期なので注意)
Dir関数で存在チェックする、というのが一般的な流れかと思います
パスを取得する必要がよくわからないのですが
2019/07/04 18:20:17以前似たようなことをしたときは単純に/deleteで削除して再接続していました
パスを取得する必要性:個人によってどのドライブレターでどのパスを利用しているかがわからないので、元の環境を復元する必要があるためです。
2019/07/05 07:41:04/deleteで削除してnet useでつけるだけだと、処理を走らせた後にアクセスできなくなったというクレームが入る可能性があるためです。