在不知道确切名称的情况下打开工作簿

时间:2019-04-04 13:21:47

标签: excel vba

所以我进行了搜索,但是没有找到适合自己的东西,我有一个文件夹,我将在其中导入一个excel文件,每次我用vba打开它时,这个excel文件都会有一个不同的名称,谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用Dir函数和多字符(*)通配符来获取文件名。

Const Path As String = "C:\Test"

Dim filename As String
    filename = Dir(Path & "\*.xlsx")

If Len(filename) > 0 Then
    ' Do your work 
    ' Remember 'filename' only holds the file name
    ' you will need to attach the rest of the path to get the full directory.
End If 

注意:如果文件夹中只有一个文件,则不会有任何问题,但是,如果文件夹包含多个文件(与上述模式匹配),则需要循环或为该函数提供其他文件名字符。

一个例子:

文件名:daily_report_20190404.xlsx

filename = Dir(Path & "\daily_report_*.xlsx")

希望这会有所帮助。