📘 Excel逆引き事典

【VBA】特定のフォルダ内の全ファイルを取得する方法

日々の業務では、大量のファイルから必要な情報を抽出することがよくあります。しかし、手作業で行うと時間がかかります。この記事では、特定のフォルダ内の全ファイルを自動的に取得し、作業時間を大幅に短縮する方法を紹介します。

サンプルコード

VBA
Option Explicit
Sub GetFilesInFolder()
    Dim fso As Object, folder As Object, file As Object
    Dim filePath As String
    
    ' 特定のフォルダパスを指定
    filePath = "C:\特定のフォルダ"
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set folder = fso.GetFolder(filePath)
    
    Application.ScreenUpdating = False
    ' フォルダ内の全ファイルを取得
    For Each file In folder.Files
        Debug.Print file.Name  ' 取得したファイル名をImmediateウィンドウに出力
    Next file
    
    Application.ScreenUpdating = True
End Sub

よくある質問

Q 元に戻せますか?

A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。

Q エラーが出たら?

A.
フォルダパスやファイル名が正しいか確認してください。また、アクセス権限がない場合もありますので、その点もチェックしてみてください。