【VBA】ファイル/フォルダ存在チェック

~簡単な自己紹介~

  • 嫁と猫3匹と暮らすフルリモートの三十路SE
  • ブリッジSE的なポジションを務めることが多く、チーム運営、顧客折衝、ベンダーコントロールが得意
  • 得意言語はSQL、VBA
  • 管理や経営にも興味があり、資格で言うと行政書士、社労士もこっそり勉強中

ファイル存在チェック

ファイルが存在すればtrue、なければfalseを返します。

'ファイルのパス
file_path = "C:\xxxx\yyyy\zzz.txt"

'ファイル存在チェック
result = Dir(file_path) <> ""

If (result) Then
    MsgBox "ファイルが存在しました。"
Else
    MsgBox "ファイルが存在しませんでした。"
End If

関数化すると↓の感じです。

'ファイル存在チェック
Public Function IsExistsFile(file_path)
    IsExistsFile = Dir(file_path) <> ""
End Function

フォルダ存在チェック

フォルダが存在すればtrue、なければfalseを返します。

'フォルダのパ
folder_path = "C:\xxxx\yyyy"

'フォルダ存在チェッ
result = Dir(folder_path, vbDirectory) <> ""

If (result) Then
    MsgBox "フォルダが存在しました。"
Else
    MsgBox "フォルダが存在しませんでした。"
End If

関数化すると↓の感じです。

'フォルダ存在チェック
Public Function IsExistsFolder(ByVal folder_path)
    If (Right(folder_path, 1) <> "\") Then
        folder_path = folder_path & "\"
    End If
    IsExistsFolder = Dir(folder_path, vbDirectory) <> ""
End Function

末尾が\で終わっていないとうまく動かないので、\で終わっていなければ\を付ける処理を追加しています。

以上になります。

お疲れさまでした。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です