VBA使用通配符*找不到我的文件有困难。这个语句中的语法有问题吗?
Workbooks.Open Filename:="C:\Users\xxxx\Desktop\xxxx Charts\xxxx Source Files\*_history_" & myYear & "-" & myMonth & "-" & mydate & "_" & myHour & "h" & myminute & "m" & "00s_xxx_all_xxx.csv"
我想要匹配的通配符是大写字母,数字,数字,数字,连字符,数字,数字,数字,数字如下:A999-9999
注意:如果我输入A999-9999(例如)它运行,那么变量或语句的其余部分似乎没有问题。
感谢您的帮助。
答案 0 :(得分:2)
这样的内容指向您的目录,找到与“ - .csv”匹配的所有csv
文件,并进行第二阶段检查以打开与您所需文件模式匹配的第一个文件
Sub LoopThroughFiles()
Dim StrFile As String
Dim bFound As Boolean
Dim WB As Workbook
StrFile = Dir("c:\temp\*-*.csv")
Do While Len(StrFile) > 0
If StrFile Like "[A-Z]###-####.csv" Then
Set WB = Workbooks.Open("c:\temp\" & StrFile)
bFound = True
Exit Do
Else
StrFile = Dir
End If
Loop
If Not bFound Then MsgBox "File not found", vbCritical
End Sub