跳至主要内容

如何将文件夹和子文件夹中的所有文件名列出到工作表中?

Author: Tech Support Last Modified: 2025-05-07

如果您需要将目录中的文件名列表生成到Excel工作表中,以下方法将帮助您快速高效地完成此操作。请选择最适合您需求的方法。


使用网页浏览器将文件夹中的所有文件名列出到工作表中

如果您想使用网页浏览器列出文件夹中的文件,您应该确保计算机上安装了一个网页浏览器(Firefox, Opera and Google Chrome)。假设您需要在工作表中列出以下文件夹的文件,请参见截图:

1. 在资源管理器中复制文件夹("Folder Test")的路径。例如,该文件夹的路径是:"C:\Users\AddinTestWin10\Desktop\Folder Test"

2. 打开一个网页浏览器(FireFox, Opera and Google Chrome),在地址栏中粘贴文件夹路径并按回车键。请参见截图:

A screenshot of folder path pasted in a browser's address bar

3. 点击"Ctrl+A"全选网页浏览器中的内容,然后按"Ctrl+C"复制它们。

4. 打开Excel,直接在工作表中粘贴(使用"Ctrl+V"快捷键粘贴)。请参见截图:

A screenshot of files listed from a folder pasted into an Excel worksheet

注意事项:
  • 1. 使用此方法时,仅能显示主文件夹中的文件,子目录中的文件无法列出。
  • 2. 文件名的超链接不可用。

使用公式将文件夹中的所有文件名列出到工作表中

在Excel中,您还可以使用公式从文件夹中获取所有文件名或特定类型文件名的列表,请按照以下步骤操作:

1. 将文件路径复制并粘贴到一个单元格中,然后在文件路径后输入\*,如下截图所示:

2. 然后,点击"公式" > "名称管理器",请参见截图:

A screenshot showing the Formula Name Manager in Excel

3. 在"名称管理器"对话框中,点击"新建"按钮,请参见截图:

A screenshot of New Name dialog box in Excel with the New button highlighted

4. 在弹出的"新建名称"对话框中,在"名称"文本框中指定一个名称,然后在"引用位置"文本框中输入以下公式,请参见截图:

=FILES(Sheet1!$A$1)

注意:在此公式中,"Sheet1!$A$1"是您在步骤1中插入文件路径的工作表单元格。

A screenshot of creating a new name range in Excel

5. 然后,点击"确定" > "关闭"以关闭对话框,然后在您希望列出文件名的空白单元格中输入以下公式,并向下拖动填充柄直到显示空白单元格,现在,指定文件夹中的所有文件名已列出,如下截图所示:

=IFERROR(INDEX(Filenames,ROW(A1)),"")

注意:在此公式中,"Filenames"是您在步骤4中创建的区域名称,而"A1"是包含文件路径的单元格。

A screenshot of a list of file names populated in Excel from a folder

注意事项:
  • 1. 如果您希望在文件关闭并重新打开后公式正常工作,您应将此工作簿保存为"Excel启用宏的工作簿"格式。
  • 2. 如果您想列出所有具有特定扩展名的文件,例如列出所有docx文件名,在这种情况下,您只需使用*docx*代替*,类似地,对于xlsx文件,请使用*xlsx*。

    An animation showing filtering for specific file types in Excel


使用VBA代码将文件夹中的所有文件名列出到工作表中

使用以下VBA在工作表中列出文件夹中的文件:

1. 打开一个工作表,并点击选择一个您想放置文件名的单元格。

2. 在Excel中按住"ALT + F11"键,打开"Microsoft Visual Basic for Applications"窗口。

3. 点击"插入" > "模块",并在"模块"窗口中粘贴以下代码。

VBA代码:将文件夹中的所有文件名列出到工作表中

Sub listfiles()
'Updateby Extendoffice
    Dim xFSO As Object
    Dim xFolder As Object
    Dim xFile As Object
    Dim xFiDialog As FileDialog
    Dim xPath As String
    Dim I As Integer
    Set xFiDialog = Application.FileDialog(msoFileDialogFolderPicker)
    If xFiDialog.Show = -1 Then
        xPath = xFiDialog.SelectedItems(1)
    End If
    Set xFiDialog = Nothing
    If xPath = "" Then Exit Sub
    Set xFSO = CreateObject("Scripting.FileSystemObject")
    Set xFolder = xFSO.GetFolder(xPath)
    For Each xFile In xFolder.Files
        I = I + 1
        ActiveSheet.Hyperlinks.Add Cells(I, 1), xFile.Path, , , xFile.Name
    Next
End Sub

4. 然后按F5键运行代码,将显示一个新的"浏览"窗口。选择您想列出文件名的文件夹。

A screenshot of the file browse window in VBA

5. 然后点击确定,指定文件夹中的文件已在工作表中列出并带有超链接。请参见截图:

A screenshot of file names listed with hyperlinks in Excel

注意:仅能列出主文件夹中的文件名。

使用Kutools将文件夹和子文件夹中的所有文件名列出到工作表中

"Kutools for Excel"的"文件名目录"工具可以轻松地在工作表中生成目录中的文件列表。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

1. 打开Excel,点击"Kutools Plus" > "导入 / 导出" > "文件名目录…",请参见截图:

2. 在"文件名目录"对话框中,执行以下操作:

A screenshot of Filename List dialog box options

(1) 点击 A screenshot of the folder selection button in the Filename List dialog box 按钮以指定包含您想列出文件的文件夹;

(2) 勾选"包括子目录中的文件"选项以列出子文件夹中的所有文件名,或勾选"包括隐藏文件和文件夹"选项以列出隐藏文件以及隐藏文件夹中的文件名;

(3) 在"文件类型"部分指定您想列出的文件类型;

(4) 从您需要的"文件大小的单位"部分中选择一个您想显示的文件大小单位。

(5) 根据需要勾选"创建超链接"选项。

3. 点击确定。它将在新工作表中生成目录或子目录中的文件列表。请参见截图:

A screenshot of a complete file name list generated using Kutools

Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取


更多相关文章:

  • 从工作簿中创建所有工作表名称的列表
  • 假设您有一个包含多个工作表的工作簿,现在您想在当前工作簿中列出所有的工作表名称,有没有快速的方法可以在Excel中创建这些工作表名称的列表而不需要一个一个地输入?本教程提供了如何在Excel中列出工作表名称的说明。
  • 根据列表从一个文件夹复制或移动文件到另一个文件夹
  • 如果您在工作表的一列中有一个文件名列表,并且这些文件位于计算机的一个文件夹中。但是,现在,您需要将这些文件从其原始文件夹移动或复制到另一个文件夹,如下截图所示。您如何能在Excel中尽快完成此任务?
  • 使用下拉列表在工作表之间导航
  • 假设您有一个包含多个工作表的工作簿,现在,您需要创建一个下拉列表或组合框,其中列出所有工作表名称,当您从下拉列表中选择一个工作表名称时,它将立即跳转到该工作表。本文将介绍如何在Excel中使用下拉列表在工作表之间导航。

最佳办公效率工具

🤖 Kutools AI 助手:基于智能执行生成代码创建自定义公式分析数据并生成图表调用 Kutools 函数等功能,彻底改变数据分析方式…
热门功能查找、高亮或标记重复项 | 删除空行 | 合并不丢失数据的列或单元格 | 四舍五入 ...
高级 LOOKUP多条件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 ....
高级下拉列表快速创建下拉列表 | 从属下拉列表 | 多选下拉列表 ....
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域和列 ...
精选功能网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...)...
排名前 15 的工具集12 种文本 工具添加文本删除特定字符等) | 50 多 种图表 类型甘特图等) | 40 多种实用 公式基于生日计算年龄等) | 19 种插入 工具插入二维码根据路径插入图片等) | 12 种转换 工具小写金额转大写汇率转换等) | 7 种合并与分割 工具高级合并行分割单元格等) | 还有更多...

使用 Kutools for Excel 提升您的 Excel 技能,体验前所未有的高效。 Kutools for Excel 提供超过 300 种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...


Office Tab 将标签式界面引入 Office,让您的工作更加轻松

  • 在 Word、Excel、PowerPoint 中启用标签式编辑和阅读
  • 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中进行操作。
  • 将您的生产力提升 50%,每天为您减少数百次鼠标点击!