我的VBA不是那么好,所以提前道歉。 我有一些vba代码,但无法使用Wildcards基于文件名工作。它只是忽略了这个条件 有超过120个excel文件,但我只想要以特定文本开头的xlsx文件,例如All_Regions.xlsx,我试图使用通配符从部分文件名中获取命中。
我可以从静态名称开始工作,但问题是每周文件名都不同:All_Regions_01012018到All_Regions_08012018,每周等等。
非常感谢任何协助。
以下示例:
Sub Testing()
OPCO = "All_re*.xlsx"
Source = "C:\files\All_OPCO\"
StrFile = Dir(Source)
If OPCO = StrFile Then
MsgBox ("Confirmed")
End If
End Sub
答案 0 :(得分:0)
您需要在Dir
参数中包含文件的搜索模式,并测试它是否存在,只需检查StrFile
是否为空:
试试这个:
Sub Testing()
OPCO = "All_re*.xlsx"
Source = "C:\files\All_OPCO\"
StrFile = Dir(Source & OPCO)
If StrFile<>"" Then
MsgBox ("Confirmed")
End If
End Sub