vba excel 2010 Environ("用户名")在saveas文件路径中不起作用

che*_*id1 3 vba username excel-2010

出于某种原因,我可以让消息框告诉我用户名是什么,但它在save as path中的工作方式不同.我收到"无法找到路径"错误.

不知道如何解决这个问题.我也看过参考文献,看起来它们是正确的.

如果我更改路径以包括每台计算机的实际用户名,宏可以正常工作.但我需要这个是任何计算机/用户的全局宏.任何帮助将不胜感激.

这是我有的:

Sub SAVEAS_2010()
'
' SAVEAS_2010 Macro
MsgBox Environ("username")

Dim UserName As String
UserName = Environ("username")

ChDir "C:\Users\" & UserName & "\Dropbox\Open Machine Schedule"
ActiveWorkbook.SaveAs FileName:= _
    "C:\Users\" & UserName & "\Dropbox\Open Machine Schedule\Open Machine Schedule - Current_2.xlsx" _
    , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
End Sub
Run Code Online (Sandbox Code Playgroud)

小智 5

似乎是个老问题.但对于任何偶然发现这篇文章的人来说,加上$为我工作 - 和Environ $("用户名")&


小智 5

或者你可以放在VBA.它面前.这为我解决了这个问题.即Environ("Username")成为VBA.Environ("Username").