如何使用部分文件名通配符运行fileExists检查?

时间:2019-01-09 14:15:43

标签: excel vba wildcard file-exists

我的文件存在代码设置如下,但是文件名的一部分(下面的_0107_1999986)是随机的,并且每天都会更改。如果满足其他条件,是否知道如何对代码的这一部分进行通配符处理,以便fileExists函数导致“处理”?

Dim c As Boolean

Set fs = CreateObject("Scripting.FileSystemObject")

c = fs.fileExists("M:\Fake\FakeXfer\" + Format(Now,"YYYYMMDD") + "_0107_1999986" + Format(Now-1, "YYYYMMDD") + ".csv"

IF Not c Then
    MsgBox "Check Later"
Else
    MsgBox "Proceed"
End If

End Sub

1 个答案:

答案 0 :(得分:0)

以下可能有效:

Sub Example()
    Dim myPathAndFile, c

    myPathAndFile = "M:\Fake\FakeXfer\" + Format(Now, "YYYYMMDD") + "*" + Format(Now - 1, "YYYYMMDD") + ".csv"

    c = Dir(myPathAndFile)
    If (c = "") Then
        MsgBox "Check Later"
    Else
        MsgBox "Proceed"
    End If

End Sub

文件名中间的通配符可能不起作用。然后将其用作扩展名之前的最后一部分,并遍历结果以验证名称的最后一部分。