这个问题在这里已经有了答案:
Get list of sub-directories in VBA
(5 个回答)
8年前关闭。
我知道这个问题的答案可能与另一个问题相似,但问题的提出方式不同。这个问题是基于用户我不知道 FileSearch
的事实。去掉了。另一个是基于概念的,包含 excel 2010 年变化的先验知识......
我找到了一些代码 here
Sub Search()
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
Set objSearch = objExcel.FileSearch
objSearch.Lookin = "D:\Music"
objSearch.SearchSubfolders = TRUE
objSearch.FileName = "*.wma"
objSearch.Execute
For Each strFile in objSearch.FoundFiles
Wscript.Echo strFile
Next
objExcel.Quit
End Sub
我试图在我的机器上运行该代码,使其适应我的一个文件夹和文件夹内的扩展,但它返回错误 445(对象不支持此操作)。我正在使用excel 2010。
有谁知道发生了什么?我正在尝试帮助一位同事,但除了 VBA 中的简单内容之外,我对文件 I/O 知之甚少。
最佳答案
Sub Search()
Dim StrFile As String, Path As String, FileName As String
Path = "D:\Music"
FileName = "*.wma"
StrFile = Dir(Path & FileName)
Do While Len(StrFile) > 0
Msgbox StrFile
StrFile = Dir
Loop
End Sub
关于excel - 在文件夹和子文件夹中搜索包含特定扩展名的所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24328252/