サイトアイコン 効率化大全

【コピペでOK】エクセルVBAでフォルダ内のファイル名を一覧取得!コピペで使えるコード付き!

フォルダ内のファイル名を一覧で取得したい…
ファイルの目次をエクセルで作って効率化したい!

フォルダの中身が増えると、どこに何があったかわからなくなることがよくあります。そんな時、VBAでファイルリストを作成すると、とても効率的に作業を行えるようになります。

今回紹介するVBAコードをコピペするだけで、指定フォルダのファイル名をエクセルに一覧化できます。さらに、一覧はリンク付きなので、クリックするだけでファイルを開くことも可能です。

「VBAは初めてでよく分からない…」という方でも、そのまま使えるエクセルファイルも用意しています。まずはダウンロードして試してみてください。

また、このVBAと添付メールの自動作成VBAを組み合わせることで、さらに効率UPが可能です。併せてぜひこちらも参考にしてみてください。

【コピペでOK】フォルダ内のファイル名を一覧取得するVBA

以下のVBAコードを使えば、指定フォルダ内のファイル名をエクセルに一覧表示できます。さらに、ファイル名にはリンクが自動的に設定されるので、クリックして開くことも可能です。

Sub FileNames()
    Dim folderPath As String, fileName As String
    Dim ws As Worksheet, fileCell As Range
    
    Set ws = ThisWorkbook.Sheets(ActiveSheet.Name)
    ws.Cells.ClearContents
    ws.Range("A1").Select
    
    ws.Range("A2") = "対象フォルダ"
    ws.Range("A3") = "ファイル名"
    
    ' フォルダ選択ダイアログ
    With Application.FileDialog(msoFileDialogFolderPicker)
        If .Show = -1 Then
            folderPath = .SelectedItems(1)
        Else
            Exit Sub
        End If
    End With
    
    ws.Range("B2") = folderPath
    
    ' ファイル名取得
    Set fileCell = ws.Range("A4")
    fileName = Dir(folderPath & "\*.*")
    
    Do While fileName <> ""
        ws.Hyperlinks.Add Anchor:=fileCell, Address:=folderPath & "\" & fileName, TextToDisplay:=fileName
        Set fileCell = fileCell.Offset(1, 0)
        fileName = Dir
    Loop
    
    MsgBox "完了しました"
End Sub

Office付きで有料AIを月1800円以下で使う方法をコチラで紹介しています!

エクセルファイルのダウンロード

VBAが分からないという方向けに、VBAが入ったエクセルファイルも用意しました。以下のリンクからダウンロードしてすぐに使えます。

エクセルファイルはNoteで販売しています。すぐに使いたい方はこちらを活用してください

【Excelツール】ファイル名一覧取得&一括変更セット|すぐに使える完成版ダウンロード|犬井 | 効率化大全
フォルダ内のファイル名を一覧で取得したい… ファイル名を一つずつ手作業で変更するのは面倒… ファイル名を打ち直して、Enter… これを何十回、何百回と繰り返すような、無駄な作業をしていないでしょうか? この記事は、そんな「ファイル名変更」...
【さらにお得】効率化ツール全セット版も公開中!

Outlook操作やファイル整理など、今後追加されるツールもすべて使い放題になる「まとめ買いセット」も紹介しています。

複数使う予定の方は、こちらの方が圧倒的にお得です。

▼ 効率化ツール全セットはこちら

【DLで使える!】Excel・Outlookの「単純作業」自動化ツール|犬井 | 効率化大全
※2025/1/7にエクセルファイル/CSVの統合ツールを追加しました! 購入いただいた方は、追加ツールは追加費用なしでダウンロード可能です! Outlookで、宛先と添付ファイルだけを変えた似たようなメールの作成『202501_請求書』の...

実行と結果の紹介

このマクロを実行すると、ファイル選択画面が表示されます。ここで、一覧を取得したいフォルダを選択します。

※名前を変更したいファイルが入ったフォルダを選択してOKボタン

フォルダを選択すると、フォルダの中のファイルが一覧表示されます。ファイル名はリンク付きになっているので、エクセルから選択することもできます。

Office付きで有料AIを月1800円以下で使う方法をコチラで紹介しています!

VBAの埋め込み、ボタンの挿入について

VBAの埋め込み

エクセルの「開発」タブから「Visual Basic」エディタを開きます。そしてVBAコードを「標準モジュール」に貼り付けます。

「開発」を出す設定コードの書き方は、VBAの基礎まとめのページで詳しく解説しています。こちらの記事もぜひ参考にしてみてください。

ボタンの挿入

ボタンをつけることで、クリックだけでマクロを実行できるようになります。

このブログでは、初期化ボタンの紹介として、ボタンについても解説しているので、参考にしてみてください。

さいごに

今回紹介したVBAで、フォルダ内のファイル名を簡単に一覧化できます。フォルダの目次としての活用や、ログ管理、ほかのVBAとの連携など、活用の幅がとても広いVBAです。ぜひこのVBAを活用して、効率化を行ってみてください。

このブログでは、このように日常業務が楽になるテクニックから、VBA等のスキルになる情報まで幅広く紹介しています。また現在、Office+生成AI2年間月1800円以下で使える、お得なキャンペーンをMicrosoftが実施しています。裏技的なやり方ですが大変お得なキャンペーンなので、興味がある方はぜひこの記事も参考にしてみてください!

MicrosoftのOffice+生成AIが月1800円以下で使えるお得な裏技はコチラ

モバイルバージョンを終了