許多用戶需要在 Excel 工作表中快速列出 Windows 文件夾中的所有文件及其所有子文件夾。 因此,在本文中,我們將為您介紹3種快速實現方法。
如果您想在 Excel 工作表中遞歸列出 Windows 文件夾中的所有文件,您肯定不喜歡手動將文件名複製到 Excel。 無疑,這太繁瑣、太耗時。 因此,在這裡我們將教您3種更智能、更方便的方法
方法 1:通過 Firefox 或 Google Chrome 列出 Windows 文件夾中的文件
- 首先,在 Windows 資源管理器中,訪問特定的 Windows 文件夾並複製文件夾路徑。

- 然後,啟動 Firefox 或 Google Chrome。
- 接下來,將復制的文件夾路徑粘貼到 Internet 瀏覽器的地址欄中。
- 之後,按“Enter”鍵。
- 立即,該 Windows 文件夾中的所有文件都將在瀏覽器中列出。

- 然後,按“Ctrl + A”選擇所有內容,然後按“Ctrl + C”複製它們。
- 最後,將它們粘貼到 Excel 工作表中。
方法 2:通過“名稱管理器”列出 Windows 文件夾中的文件
- 首先,創建一個新的 Excel 工作表。
- 然後,選擇單元格 A1。
- 接下來,轉到“公式”選項卡,然後單擊“名稱管理器”按鈕。
- 在彈出的對話框中,單擊“新建”按鈕。
- 隨後,在下一個對話框中,在“名稱”字段中輸入“文件”。
- 並將“引用:”字段中的“=Sheet1!$A$1”更改為“=FILES(Sheet1!$A$1)”。
- 然後,單擊“確定”並關閉“名稱管理器”對話框。
- 稍後,複製單元格 A1 中的 Windows 文件夾路徑並添加“\*”在路徑的末尾。
- 接下來,選擇單元格 A3 並輸入函數“=INDEX(Files,ROW()-2)”。
- 立即會列出此 Windows 文件夾中的一個文件,如下圖所示。
- 最後,只需將此函數複製到幾行即可列出其他文件,直到看到“#REF!” 錯誤。 該錯誤意味著所有文件都已列出。
方法 3:通過 Excel VBA 遞歸列出 Windows 文件夾中的文件
- 首先,建立一個新的 Excel 檔案。
- 接下來,參考“訪問Excel VBA編輯器”如何在Excel中運行VBA代碼“。
- 然後,將以下代碼複製到“ThisWorkbook”項目中。
Sub BatchListAllFiles_FolderSubfolders()
Dim strWindowsFolder As String
'Select the source Windows folder
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = Application.DefaultFilePath & "\"
.Title = "Please select a folder to list Files from"
.InitialFileName = "E:\"
.Show
If .SelectedItems.Count > 0 Then
strWindowsFolder = .SelectedItems(1) & "\"
End If
End With
With ActiveSheet
.Cells(1, 1) = "Name"
.Cells(1, 1).Font.Bold = True
.Cells(1, 2) = "Path"
.Cells(1, 2).Font.Bold = True
.Cells(1, 3) = "Size(Bytes)"
.Cells(1, 3).Font.Bold = True
.Cells(1, 4) = "Type"
.Cells(1, 4).Font.Bold = True
.Cells(1, 5) = "Created"
.Cells(1, 5).Font.Bold = True
End With
Call LoopFolders(strWindowsFolder)
End Sub
Sub LoopFolders(strFolderPath As String)
Dim objFileSystem As Object
Dim objFolder As Object
Dim objFile As Object
Dim nLastRow As Integer
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFileSystem.GetFolder(strFolderPath)
For Each objFile In objFolder.Files
With ActiveSheet
nLastRow = .Range("A" & .Rows.Count).End(xlUp).Row + 1
.Range("A" & nLastRow) = objFile.Name
.Range("B" & nLastRow) = objFile.Path
.Range("C" & nLastRow) = objFile.Size
.Range("D" & nLastRow) = objFile.Type
.Range("E" & nLastRow) = objFile.DateCreated
.Columns("A:E").AutoFit
End With
Next
'Process all folders and subfolders recursively
If objFolder.SubFolders.Count > 0 Then
For Each objSubFolder In objFolder.SubFolders
'Skip the system and hidden folders
If ((objSubFolder.Attributes And 2) = 0) And ((objSubFolder.Attributes And 4) = 0) Then
LoopFolders (objSubFolder.Path)
End If
Next
End If
End Sub
- 現在,單擊進入第一個子例程並按“F5”鍵。
- 在彈出的對話框中,導航到並選擇要從中列出文件的 Windows 文件夾,然後單擊“確定”。
- 最後,當宏完成時,返回到 Excel 工作表。 Windows文件夾及其子文件夾中的所有文件均已列出,如下圖所示。
Excel 有時會崩潰
與其他軟體一樣,Excel 偶爾也會崩潰,這可能會直接導致目前開啟的 Excel 檔案遺失。在這種情況下,大多數使用者都希望 Excel 能在重新啟動後自動恢復檔案。然而,實際情況往往並非如此。這時,就必須求助於… Excel修復 工具,例如 DataNumen Excel Repair.
作者簡介:
Shirley Zhang是的數據恢復專家 DataNumen,Inc.是數據恢復技術的全球領導者,包括 恢復mdf 和Outlook修復軟件產品。 欲了解更多信息,請訪問 萬維網。datanumen.COM









