Sub OpenFolderofProject()
Dim strMsg As String, strTitle As String
Dim sFolder As String
sFolder = ThisWorkbook.Path
strMsg = "Open WorkBook Folder Location? "
strTitle = "Folder Location:" & sFolder
If MsgBox(strMsg, vbQuestion + vbYesNo, strTitle) = vbNo Then
Else
Call Shell("explorer.exe " & sFolder, vbNormalFocus)
End If
End Sub
5条答案
按热度按时间93ze6v8z1#
如果文件名是固定的,则可以使用ActiveWorkbook.path函数返回当前工作簿的路径:
Dim FileName as string FileName = ActiveWorkbook.Path & "\myfile.xlsx
检查是否需要额外的斜线字符。
tct7dpnv2#
如果该文件与包含VBA宏的文档位于同一文件夹中,请使用
例如:
(this即使文档不再是活动文档,或者您更改了当前目录,也能正常工作)。
bvhaajcl3#
如果在同一文件夹中,则
或
应该可以。我刚刚在Excel VBA中两种都试过了,都成功了。
xxb16uws4#
工作簿。打开(“D:\数据\莫希特·辛格\msk\data\book1.xlsx”)
xiozqbni5#
打开ActiveWorkBook的文件夹
上下文:通常您的项目修订版本会不断更改,或者您有一个自动生成的具有动态名称的工作簿。无论是哪种情况。这将知道您的工作簿路径位置,并询问您是否要打开该特定文件夹。
当我在工作簿的同一个文件夹中动态地以编程方式保存一堆Excel时,这对我来说非常有用。因为不是关闭/最小化工作簿进入资源管理器。我可以专注于项目而不会失去思路。