VBA:如何获取使用新的自动保存功能(因此从技术上讲是从OneDrive打开的)的工作簿的本地文件路径



我有一个工作簿,它可以进行一些分析,并将结果输出到保存工作簿的同一目录中的文本文件中。我需要在多台计算机上运行此代码,以便更改本地目录。以前我只是用

Application.ActiveWorkbook.Path

但由于启用了自动保存功能(这很有用,所以我想继续使用),这将返回OneDrive中的远程文件路径。

如何获取本地文件路径?

我认为您正在寻找的是一个Environ函数:https://msdn.microsoft.com/en-us/vba/language-reference-vba/articles/environ-function

你可以这样设置你的"路径":

MyPath = Environ("LocalAppData")

哪个会返回:

C:UsersusernameAppDataLocal

MyPath = Environ("Public")

哪个会返回:

C:UsersPublic

有更多选项可供选择(AppDataAllUsersProfile等)

希望这能有所帮助!

我使用FileSystemObject解决了这个问题。

Dim fso as FileSystemObject, localPath as String
localPath = fso.GetParentFolderName(fso.GetAbsolutePathName(Application.ActiveWorkbook.Name))

相关内容

最新更新