【发布时间】:2017-08-25 13:03:46
【问题描述】:
我有一个 Excel 文件,上面写有 VBA,它从我计算机上的文件中提取信息。 Excel 文件位于网络文件夹中,我希望网络上的其他用户也可以使用它。但是,我在 VBA 上对文件路径进行了硬编码,因此,每当其他用户打开它时,它都会查找不可用的文件。
这是我想改变的路径:
C:\Users\User1\Documents\The Market in\DATA FOR REPORTS.xlsx
路径上的唯一区别是用户名:User1、user2 等。
如何编写 VBA 代码,以便将文件路径中的用户名替换为打开它的 Windows 用户名?
我尝试过使用通配符,也尝试过使用ENVIRON("username")但没有成功。
我要替换的代码如下:
Private Sub Workbook_Open()
Application.Visible = False
WelcomeForm.Show
Workbooks.Open ("C:\Users\User1\Documents\The Market in\DATA FOR REPORTS.xlsx")
End Sub
这就是我使用 ENVIRON 所做的:
Private Sub Workbook_Open()
Dim username As String
username = Environ("username")
Application.Visible = False
WelcomeForm.Show
Workbooks.Open ("C:\Users\&username&\Documents\The Market in\DATA FOR REPORTS.xlsx")
End Sub
非常感谢
【问题讨论】:
-
Environ("Username")应该可以工作。你能说明你是如何使用它的吗?问题/错误是什么? -
我刚刚将它添加到问题中。谢谢你或你的帮助!
-
这不是正确的连接语法 -
"C:\Users\&username&\Documents- 仔细看看下面的答案