首先,我必须说我在一台安装了很少引用且根本没有 Office 的机器上运行代码。
我需要使用Shell
命令打开一个“explorer.exe”实例,浏览文件夹,输入一个选定的(或新创建的)实例,最后单击一个MsgBox
(同时弹出)上的“确定”以关闭Shell
并返回变量的选定文件夹路径。
我不知道如何实现这一目标。当我使用 时CurDir
,我最终得到一个不是所选文件夹的文件夹。
使用的代码(不起作用):
Sub BrowseForFolder()
ActualDir = "D:\"
Call Shell("C:\Windows\explorer", ActualDir, 1)
If Msgbox("Browse into folder or create a new one and then browse into it, then click ok", vbOkOnly, "Browse") = vbOk Then
' here should be the command to return the path. The following doesn't work since it returns always "D:\"
ActualDir = CurDir
End If
' Here I have to close the Shell - I have no idea what to write to do it
End Sub