今回はExcel VBAで指定したフォルダの一覧をExcelに書き出すマクロの作り方を紹介します。
フォルダ内に存在するファイルの一覧をまとめたい場合に使えます。
コピペで使えるようにしていますので、ご活用ください!
うめ
ファイル数が多い時に重宝します!
コード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
Sub ファイル名の一覧を取得() Dim Ws As Worksheet Set Ws = Worksheets("ファイル一覧") Dim Cnt As Long: Cnt = 6 Dim Path As String: Path = Ws.Range("B3") '格納先 Dim Buf As String: Buf = Dir(Path & "\" & "*.xlsx") Dim MaxRow As Long: MaxRow = Ws.Cells(6, 2).End(xlDown).Row '前回結果をクリア If Ws.Cells(6, 2) <> "" Then Ws.Range(Cells(6, 2), Cells(MaxRow, 2)).Clear End If 'ファイルがなくなるまで繰り返す Do While Buf <> "" Ws.Cells(Cnt, 2) = Buf Cnt = Cnt + 1 Buf = Dir() Loop MsgBox "読み込み終了!" End Sub |
※シート名は「ファイル一覧」としています。
実行後
実行後の表示はこの通りです。
「対象フォルダ」に格納されている拡張子がxlsxのファイル名を一括で取得します。
ファイル名を取得した場合、B6セルから下方向に書き込んでいきます。
この記事では取得したファイル一覧を元に一括でファイル名を変更する方法を紹介しています。