用VBA Dir无法打开名称中含特定字符的Excel???急!!!
Workbooks.OpenFilename:=Dir(ThisWorkbook.Path&"\"&"*Working*"&".xlsx"),UpdateLinks:=0...
Workbooks.Open Filename:=Dir(ThisWorkbook.Path & "\" & "*Working*" & ".xlsx"), UpdateLinks:=0
其中,文件夹中肯定存在2014 Working.xlsx,VBA 能返回Excel含有特定字符Working的完整名,2014 Working.xlsx后缀也正确。
却提示在文件夹中(没提哪个文件夹)没找到2014 Working.xlsx
在文件夹下先用随便一个工作簿另存时触发一下就可以了,但这个有点麻烦,不知道为什么
求高人~ 展开
其中,文件夹中肯定存在2014 Working.xlsx,VBA 能返回Excel含有特定字符Working的完整名,2014 Working.xlsx后缀也正确。
却提示在文件夹中(没提哪个文件夹)没找到2014 Working.xlsx
在文件夹下先用随便一个工作簿另存时触发一下就可以了,但这个有点麻烦,不知道为什么
求高人~ 展开
展开全部
你要遍历 这个文件夹的,然后用 instr 判断的
DIR 不支持模糊匹配
Sub 打开()
Path = "D:\360data\重要数据\桌面\VBA"
f = Dir(Path & "\*.xls", vbNormal)
Do
If InStr(f, "Working") > 0 Then
Set Wkb = Workbooks.Open(Filename:=Path & "\" & f)
Exit Do
End If
f = Dir()
Loop Until f = ""
End Sub
追问
我在文件夹里随便用一个Excel另存到这个文件夹下时,看到文件夹里所有的Excel后就可以了
这是为什么
追答
Sub 打开1()
Path = "D:\360data\重要数据\桌面\VBA"
f = Dir(Path & "\" & "*Working*" & ".xls", vbNormal)
Workbooks.Open Path & "\" & f
End Sub
我测试, 这2句分开, 别连一起是可以的
看来dir 是支持通配符的, 是open 语句 不能这么直接调用文件名, 要分2句
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询