【VBA】特定のフォルダ内の全ファイルを取得する方法
日々の業務で大量のファイルを扱う場合、それぞれのファイル名や更新日時などを一覧化することは非常に効率的です。しかし手作業では時間がかかります。この記事では、Excel VBAを使用して特定フォルダ内の全ファイル情報を取得する方法を紹介します。
サンプルコード
VBA
Option Explicit
Sub GetFilesInFolder()
Dim fso As Object, folder As Object, file As Object
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
' フォルダパスを指定
Dim folderPath As String: folderPath = "C:\Users\User\Documents"
' オブジェクトの初期化
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(folderPath)
' ファイル情報を取得
Dim i As Integer: i = 1
For Each file In folder.Files
ws.Cells(i, 1).Value = file.Name
ws.Cells(i, 2).Value = file.DateLastModified
i = i + 1
Next file
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
フォルダパスやファイル名、列番号などが正しいか確認してください。