当我使用它时,我得到一个常量表达式错误消息:
Const FName As String = "c:\users\" & AGuser & _
"\documents\Appraiser_Genie\working\graphs.jpg"
任何建议都将不胜感激
答案 0 :(得分:0)
正如其他人所指出的,并且正如编译器将告诉你的那样,Constant表达式不能包含变量信息,函数调用或在编译时无法评估的任何内容。所以,这不起作用:
Const FName As String = "c:\users\" & AGuser & "\documents\Appraiser_Genie\working\graphs.jpg"
Public AGuser as String
Sub foo()
Aguser = Environ("username")
End Sub
这也不会:
Const FName As String = "c:\users\" & Environ("username") & "\documents\Appraiser_Genie\working\graphs.jpg"
等
我通常使用的方法是使用常量表达式和带Replace
函数的本地/过程级变量。
Const FName As String = "c:\users\%username%\documents\Appraiser_Genie\working\graphs.jpg"
Sub foo()
Dim path As String
Dim AGUser as String
AGUser = Environ("username") 'Modify if you need to do something else...
path = Replace(FName, "%username%", AGUser)
MsgBox path
End Sub
或者,只需创建一个名为Function
的{{1}},它返回字符串:
FName