VBA的新手,抱歉
我需要创建一些可用于整个工作簿的变量,但我似乎无法弄明白。我以前的问题中已经读过一些人建议为此创建一个单独的暗淡?
当工作簿打开时,我需要设置一些等于工作表中某些单元格的变量,这些变量需要从其他工作表中的dims调用。
到目前为止,我已尝试使用
Workbook_Open()
在本工作手册中'代码区但无济于事。
任何提示?
Reagards
编辑----
我尝试了以下内容:
在ThisWorkbook'
中Public wsDrawings As String
Public Sub Workbook_Open()
wsDrawings = "Hello"
End Sub
在Sheet1中
Private Sub CommandButton1_Click()
MsgBox wsDrawings
End Sub
我没有收到错误,但消息框为空。
答案 0 :(得分:0)
您可以使用此代码
创建全局变量 Public testVar As String
您需要将其放在function
或sub
之外,然后此变量具有值,直到您关闭工作簿。但我认为它只有当前模块的范围。
所以你可以拥有这样的东西
Public testVar As String
Private Sub Workbook_Open()
testVar = "test"
End Sub
Sub testEcho()
MsgBox testVar
End Sub
多个模块之间的共享变量看起来here
编辑:
所以现在我发现,你可以使用这个
来使用ThisWorkbook中的公共变量Sub testSub()
MsgBox ThisWorkbook.wsDrawings
End Sub
答案 1 :(得分:0)
只需声明首次使用它们所需的变量(ThisWorkbook是一个很好的地方)并用Dim
替换典型的Public
。然后,您可以在所有代码中访问它
答案 2 :(得分:-1)
您可以使用模块创建全局变量。