在日常工作中,我们经常需要处理大量的文件,而文件名往往包含了重要的信息。手动一个一个地记录文件名不仅耗时,还容易出错。幸运的是,借助Excel的强大功能,我们可以轻松实现批量提取文件名,从而提高工作效率。
首先,我们需要准备一个包含目标文件夹路径的工作表。在Excel中新建一个工作簿,并在A列输入文件夹的完整路径。确保每条路径占据一行,这样可以方便后续操作。
接下来,我们将使用VBA(Visual Basic for Applications)宏来编写一段脚本,用于自动提取指定文件夹中的所有文件名。打开Excel后,按Alt + F11进入VBA编辑器。在这里,点击菜单栏上的“插入” -> “模块”,然后粘贴以下代码:
```vba
Sub ExtractFileNames()
Dim fso As Object
Dim folder As Object
Dim file As Object
Dim ws As Worksheet
Dim row As Long
' 设置工作表和起始行
Set ws = ThisWorkbook.Sheets(1)
row = 2
' 创建文件系统对象
Set fso = CreateObject("Scripting.FileSystemObject")
' 遍历A列中的每个文件夹路径
For Each cell In ws.Range("A2:A" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)
If fso.FolderExists(cell.Value) Then
Set folder = fso.GetFolder(cell.Value)
' 将文件夹内的文件名写入B列
For Each file In folder.Files
ws.Cells(row, 2).Value = file.Name
row = row + 1
Next file
End If
Next cell
MsgBox "文件名提取完成!"
End Sub
```
这段代码会遍历A列中的每个文件夹路径,并将该文件夹下的所有文件名逐一提取出来,存储在B列中。为了运行这段代码,请确保你的Excel启用了宏功能。
保存并关闭VBA编辑器后,返回Excel界面,按下Alt + F8打开宏对话框,选择刚才创建的`ExtractFileNames`宏并执行。程序将会开始处理,完成后会弹出提示框告知你任务已完成。
通过这种方式,你可以快速地从多个文件夹中提取出所需的文件名列表,为后续的数据整理或分析打下坚实的基础。这种方法不仅高效,而且减少了人为错误的可能性,非常适合需要频繁处理大量文件的专业人士使用。