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,它将运行,因此变量或语句的其余部分似乎没有问题。

感谢您的协助。

最佳答案

这样的内容指向您的目录,以查找所有与“ -.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

09-04 02:41