ファイルが存在しているか確認したい!【エクセル】【VBA】

Excel

はじめに

今回は、VBAで任意のファイルが存在しているかを確認するVBAコードをご紹介いたします。

コード

ファイルの存在確認をするには、「FileSystemObject」を使用します。

'ファイルが存在しているか確認する
Public Function ExistsFile(ByVal FilePath As String)

    '参照設定する場合
    'Dim fso As Scripting.FileSystemObject: Set fso = New Scripting.FileSystemObject
    '参照設定しない場合
    Dim fso As Object: Set fso = CreateObject("Scripting.FileSystemObject")
    
    ExistsFile = fso.FileExists(FilePath)

End Function

「FileSystemObject」を使用する際は、参照設定する場合としない場合があります。
上のコードでは参照設定しないパターンを書いており、参照設定する方をコメントアウトしています。
参照設定する場合は、上記コードのコメント部を書き換えましょう。

参照設定

参照設定をするには、VBE画面にて「ツール→参照設定」で参照設定ウィンドウを開きます。
その後、「Microsoft Scripting Runtime」にチェックを入れて、OKを押します。

おまけ

書き方が2通りある「FileSystemObject」ですが、それぞれメリットとデメリットがあります。

参照設定をする場合は、インテリジェンス(予測変換)が効くのでコーディングがしやすいです。
参照設定をしない場合は、参照設定をする必要がありません。

おすすめは小分けしたプロシージャを用意しておき、様々なファイルで使いまわすのが良いと思います。

目的に応じて選択してください!

終わりに

いかがでしたでしょうか。

「FileSystemObject」はファイルを扱う上で多用しますので、おすすめです。

参考にしてください!

コメント

タイトルとURLをコピーしました