VBA - 如果宏是来自 Personal.xlsb 的 运行,如何获取工作簿 filepath/location
VBA - How to get workbook filepath/location if macro is run from Personal.xlsb
我的宏隐藏在我的 Personal.xlsb 文件中,我想将一个文件保存在与应用宏的工作簿相同的目录中。
目前当我使用:
Application.ThisWorkbook.Path
它获取 Personal.xlsb 的位置(宏的来源),而不是工作簿的目录。有人可以告诉我如何解决这个问题(不向我的工作簿添加模块)吗?
Path
属性 可用于任何 Workbook
对象,而不仅仅是 ThisWorkbook
对象。
所以,要获取ActiveWorkbook
的路径,可以使用ActiveWorkbook.Path
。
或者,例如,如果您使用类似以下内容打开工作簿:
Dim wb As Workbook
Set wb = Workbooks.Open("C:\Temp\Test\File1.xlsx")
那么你可以使用 wb.Path
,当然,return "C:\Temp\Test"
。
我的宏隐藏在我的 Personal.xlsb 文件中,我想将一个文件保存在与应用宏的工作簿相同的目录中。 目前当我使用:
Application.ThisWorkbook.Path
它获取 Personal.xlsb 的位置(宏的来源),而不是工作簿的目录。有人可以告诉我如何解决这个问题(不向我的工作簿添加模块)吗?
Path
属性 可用于任何 Workbook
对象,而不仅仅是 ThisWorkbook
对象。
所以,要获取ActiveWorkbook
的路径,可以使用ActiveWorkbook.Path
。
或者,例如,如果您使用类似以下内容打开工作簿:
Dim wb As Workbook
Set wb = Workbooks.Open("C:\Temp\Test\File1.xlsx")
那么你可以使用 wb.Path
,当然,return "C:\Temp\Test"
。