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

时间:2012-02-08 22:24:40

标签: excel excel-vba excel-2007 excel-2010 vba

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

这是一个例子:
目录:c:\temp
文件模式:是xxxxx0123.xls(xxxxx表示文件名)。

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

提前致谢

1 个答案:

答案 0 :(得分: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