您的瀏覽器不支援JavaScript功能,若網頁功能無法正常使用時,請開啟瀏覽器JavaScript狀態
Antfire 的生活雜記
Skip
    • 首頁
    • Blog
    • Excel中列出某個目錄底下所有檔案
    banner

    Excel中列出某個目錄底下所有檔案

    Excel中列出某個目錄底下所有檔案

    輸入要讀取的資料夾路徑

    在A1欄位輸入完整的資料夾路徑,最後記得要帶一個星號*,例如D:\ExcelListFileExample\*

    img-2022-01-07_16-50-02.png

    定義名稱

    公式頁籤,點擊定義名稱

    img-2022-01-07_16-53-42.png

    新增名稱

    開啟新增對話視窗後
    名稱填入FileNameList (想填其它的也可以,自己記住就好)
    範圍選擇活頁簿
    參照到填入 =FILES(工作表1!$A$1)
    結果如下圖所示

    img-2022-01-07_17-01-04.png

    帶入公式

    在A3欄位貼上以下公式=IFERROR(INDEX(FileNameList,ROW()-2),"")
    接著往下拖曳即可列出資料夾內的所有檔案名稱

    img-2022-01-07_17-18-45.png

    補充

    過濾附檔名

    如果只想列出指定的附檔名,例如pdf,修改位於A1的資料夾路徑,將D:\ExcelListFileExample\* 改成 D:\ExcelListFileExample\*pdf*即可

    img-2022-01-07_17-12-16.png

    範例檔案下載

    /blog/list-of-file-names-from-a-folder-in-excel/Example.xlsm

    使用VBA?

    Sub ListFiles()
    
        Dim MyPath As String
        Dim MyFile As String
        Dim i As Integer
        
        MyPath = "C:\Users\使用者名稱\Documents\" '將路徑替換為您想要列出檔案的目錄路徑
        
        MyFile = Dir(MyPath & "*.*")
        
        i = 1
        
        Do While MyFile <> ""
            Cells(i, 1) = MyFile
            i = i + 1
            MyFile = Dir
        Loop
        
    End Sub
    

    請將 MyPath 替換為您要列出檔案的目錄路徑。此巨集會在活頁簿的第一個工作表中的第一列中列出指定目錄下的所有檔案的檔案名稱。請注意,此代碼僅列出目錄中的檔案,不包括任何子目錄中的檔案。

    請按下 Alt + F11 開啟 VBA 編輯器,然後選擇插入模組。將上面的程式碼複製貼上到模組中,然後保存文件並關閉 VBA 編輯器。然後返回 Excel,選擇開發人員標籤,點擊巨集後,找到巨集名稱ListFiles並選擇後,點一下執行即可。

    img-2023-03-07_10-20-27.png

    如果找不到開發人員標籤,請到檔案→選項,開啟Excel 選項後,選擇自訂功能區,然後開啟開發人員的標籤,如下圖

    img-2023-03-07_10-21-16.png

    使用Powershell?

    Get-ChildItem "C:\Users\使用者名稱\Documents\" | Where-Object {$_.Attributes -ne "Directory"} | Select-Object Name | Export-Csv -Path "C:\Users\使用者名稱\Documents\檔案清單.csv" -NoTypeInformation
    

    如果想要列出檔案,可以參考這篇文章 Excel列出所有目錄

    參考資料

     Comments