如何读取excel VBA目录中的某些文件

use*_*125 1 excel vba excel-2007 excel-vba excel-2010

我想从目录中读取某些excel文件,然后使用VBA 在打开它们.

下面是一个示例:
directory:c:\temp
file pattern:is xxxxx0123.xls(xxxxx表示文件名).

我尝试使用Application.FileSearch,但它在Excel 2007中不起作用.有没有人有好的建议?

提前致谢

bre*_*tdj 6

您可以使用DIR查找与您的模式匹配的文件,即此代码打开这些文件,抓取它们的路径,然后再次关闭文件

如果需要查看子文件夹,可以使代码递归

Sub GetFiles()
    Dim strFolder As String
    Dim strFileName As String
    Dim wb As Workbook
    strFolder = "C:\temp"
    strFileName = Dir(strFolder & "\*123.xls")
    Do While Len(strFileName) > 0
        Set wb = Workbooks.Open(strFileName)
        Debug.Print wb.FullName
        wb.Close False
        strFileName = Dir
    Loop
End Sub
Run Code Online (Sandbox Code Playgroud)