我正在尝试将dir函数与(*)符号一起使用以自动完成部分路径名(在此示例中: Deskt - >桌面) 这是我试过的代码,但它说我遇到了语法错误:
Sub check()
Dim folderpath As String
folderpath = "C:\Users\levs\Deskt"
MsgBox (Dir(folderpath*, vbDirectory))
End Sub
但是,如果我在不使用变量的情况下编写代码,它将起作用:
MsgBox (Dir("C:\Users\levs\Deskt*", vbdirectory)
那么可以使用具有此功能的变量吗?
非常感谢!
答案 0 :(得分:1)
您需要进一步构建字符串:
MsgBox (Dir(folderpath & "*", vbDirectory))
答案 1 :(得分:0)
这是一种语法而不是另一种...
如果你这样做
folderpath = "myPath"
然后变量 folderpath 是一个String,现在如果你执行类似 folderpath * 的操作,那么你使用一元运算符来保存一个字符串的变量...
请注意这是将字符串与“*”连接的完全不同的操作...() 在某些语言中可以是乘法运算符,但在其他语言中可能是更复杂的指针...
正确连接,即替换
<{p}} MsgBox (Dir(folderpath*, vbDirectory))
MsgBox (Dir(folderpath&"*", vbDirectory))
或事件更好地在声明中进行连接...
您的最终方法应如下所示:
Sub check()
Dim folderpath As String
folderpath = "C:\Users\levs\Deskt*"
MsgBox (Dir(folderpath, vbDirectory))
End Sub
答案 2 :(得分:0)
您需要连接widlcard和文件夹路径
sub check()
Dim folderpath As String
folderpath = "C:\Users\levs\Deskt"
MsgBox (Dir(folderpath & "*", vbDirectory))
End Sub