ファイルの存在を確認する
指定したパスにファイルがあるか調べます。隠しファイルも確認し、フォルダーはファイルとして扱いません。
実行前に確認
- Windows専用の例です。C:\Dataは例なので、自分で用意した練習用フォルダーの絶対パスに変更してください。
- アクセスできない場所は正確に調べられない場合があります。CreateObjectによる遅延バインディングなので参照設定は不要です。
1サンプルコード
Sub Example4000()
On Error GoTo Failed
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim filePath As String
filePath = "C:\Data\sample.txt"
If fso.FileExists(filePath) Then
MsgBox "ファイルがあります"
Else
MsgBox "ファイルはありません"
End If
Exit Sub
Failed:
MsgBox "処理を中止しました: " & Err.Description
End Sub図で見る操作の流れ
イメージ図コードに沿った概念図です。実際の画面や実行結果ではありません。
対象
C:\Data\sample.txtの存在を調べる
マクロ:判定
FileExistsで隠しファイルも含めて確認
結果
「ファイルがあります」または「ファイルはありません」を表示。ファイルは変更しない
フォルダーはファイルとして扱いません。アクセスできない場所では正しく確認できない場合があり、エラー時は中止を表示します。
コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。
使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
- 1
Windows版のデスクトップExcelで練習用ブックを.xlsm形式で保存します。Alt+F11→[挿入]→[標準モジュール]に、この例だけを貼り付けます。
- 2
C:\Data\sample.txtを調べたいファイルの絶対パスに変えます。
- 3
実行するSubの内側にカーソルを置き、F5キーを押します。
- 4
実行すると存在の有無を表示するだけで、ファイルの変更はしません。