初心者から実務利用者まで
わかりやすいVBA解説サイト
コードサンプル

指定のファイルが存在しているか調べる

指定したファイルが存在しているかを確認します。

遥先生
遥先生
Dir関数という関数を使うのよ。
ひとみさん
ひとみさん
ファイル検索ができるなんてとても便利な関数ですね!
この記事でわかること

・Dir関数とは
・指定のファイルが存在しているか調べるコード
・指定パスを一度変数に入れる小ワザ!

Dir関数とは

Dir関数は指定したファイルが
存在しているかを調べる事ができる関数です。

指定のファイルのパスを引数にすると
そのファイルが存在していれば、変数にファイル名が代入されます。
フォルダが存在しなければ””が返ります。

指定したファイルが存在するかを確認するコード

遥先生
遥先生
検索したファイルが存在していればファイル名を
変数strに代入します。

検索パスとファイル名を変数に入れた理由

遥先生
遥先生
検索するフォルダとファイル名を一度
変数「path」の中に入れているの。

上記のサンプルでは変数「path」と変数「fileName」を作成して
その中に検索したいフォルダとファイル名を入れています。

しかし、変数を使わずに
直接Dir関数の引数にパスとファイル名を書き込んでも構いません。

ただし、基本的にパスやファイル名というのは長い場合が多く、
そのままコードに書き込んでしまうとDir関数の()の中が
ゴチャゴチャしてしまいます。

また、マクロの中にパスを組み込んでしまうと
いつかパスやファイル名を変更したい時が来た場合に、
コードを追ってどこに書いたかを探さなくてはなりません。

そのため、コードの上部にまとめた変数の中で
変数「path」「fileName」に代入して
変数の内容を管理しています。

ひとみさん
ひとみさん
Dir関数の()の中がスッキリして見やすくなりますね!

Dir関数のまめちしき

下記は仕組みの説明であり、知らなくてもコードは動きます。
知識を深めたい方のみ読んでみてください。

Dir関数の書き方は「Dir(パターン, 属性)」となっており、
Dirの後に、「パターン」と「属性」という二つの引数を設定します。

パターンは、パスやファイル名など、探したい文言を記入する場所です。

属性は、探すものの種類のことです。
ファイル、フォルダ、隠しファイル、読み取り専用ファイルなどが選べます。

属性を省略すると自動的にファイルを探します。

上記のサンプルではファイルを探そうとしているので
属性の部分が省略されています。

処理をサブルーチン化する

遥先生
遥先生
メインマクロからサブルーチン化した
処理を呼び出すコードです。

メインマクロからパスを引数で渡し、サブルーチンでファイルの存在を確認します。
パスはA1セル、ファイル名はA2セルに入力する仕様となっています。
入力するセルを変更する場合は8~9行目を変更してください。

ひとみさん
ひとみさん
長いマクロにはこちらをコピーして
アレンジして使用できますね。