VBA 使用通配符访问获取文件名
VBA Access Get File Name with wildcard
我在使用通配符获取文件名时遇到了一些问题。
我正在使用通配符,因为文件名中有一个“版本”,所以在这种情况下,“Test v*”可能是“Test v1”或“Test v2”,因此我希望它提取任何版本的名称当前在桌面上。
这是我的代码的简化版本。如果 运行 你得到“Test v*”而不是实际的文件名。不确定我遗漏了什么,但我们将不胜感激
Dim Owner As String
Dim Cver As String
Dim FileName As String
Owner = Environ("USERNAME")
FileName = "C:\Users\" & Owner & "\Desktop\TEST v" & "*" & ".accdb"
Cver = Left(FileName, InStr(FileName, ".") - 1)
MsgBox "" & Mid(Cver, 7, 2) & ""
您将要使用 Dir()
这是我的代码版本:
Sub getVersion()
Dim owner As String
Dim Cver As String
Dim fileName As String
Dim owner As String: owner = Environ("USERNAME")
Dim fileName As Variant: fileName = Dir("C:\Users\" & owner & "\Desktop\TEST v" & "*" & ".accdb", vbDirectory)
Cver = Left(fileName, InStr(fileName, ".") - 1)
MsgBox "" & Mid(Cver, 7, 2) & ""
End Sub
我在使用通配符获取文件名时遇到了一些问题。 我正在使用通配符,因为文件名中有一个“版本”,所以在这种情况下,“Test v*”可能是“Test v1”或“Test v2”,因此我希望它提取任何版本的名称当前在桌面上。
这是我的代码的简化版本。如果 运行 你得到“Test v*”而不是实际的文件名。不确定我遗漏了什么,但我们将不胜感激
Dim Owner As String
Dim Cver As String
Dim FileName As String
Owner = Environ("USERNAME")
FileName = "C:\Users\" & Owner & "\Desktop\TEST v" & "*" & ".accdb"
Cver = Left(FileName, InStr(FileName, ".") - 1)
MsgBox "" & Mid(Cver, 7, 2) & ""
您将要使用 Dir()
这是我的代码版本:
Sub getVersion()
Dim owner As String
Dim Cver As String
Dim fileName As String
Dim owner As String: owner = Environ("USERNAME")
Dim fileName As Variant: fileName = Dir("C:\Users\" & owner & "\Desktop\TEST v" & "*" & ".accdb", vbDirectory)
Cver = Left(fileName, InStr(fileName, ".") - 1)
MsgBox "" & Mid(Cver, 7, 2) & ""
End Sub