【VBA】特定のフォルダ内の全ファイルを配列に高速格納する方法
日々の業務で大量のファイルを扱う際、一つ一つ手作業で処理するのは労力と時間を要します。この記事では、特定のフォルダ内の全ファイル名を高速に配列に格納するVBAマクロを作成し、効率的な業務遂行をサポートします。
サンプルコード
VBA
Option Explicit
Sub GetFilesToArray()
Dim fso As Object
Dim folder As Object
Dim file As Object
Dim files() As String
Dim i As Long
' フォルダパスの指定
Const FolderPath = "C:\YourFolderPath"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(FolderPath)
ReDim files(folder.Files.Count - 1) As String
i = 0
For Each file In folder.Files
files(i) = file.Name
i = i + 1
Next file
' 配列の内容を表示(デバッグ用)
Debug.Print Join(files, vbCrLf)
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
フォルダパスやファイル名が正しいことを確認してください。また、アクセス権限があるかもチェックしましょう。