在VBA中,我需要一个模块子来告诉实例设置一些变量。
在第1单元中,我有:
Sub Load()
ThisWorkbook.SetupVariables
ThisWorkbook.TestVariables
End Sub
在ThisWorkbook中我有:
Private Variable1 As Integer
Private Variable2 As String
Private Variable3 As MyUserDefinedObjectType
Public Sub SetupVariables()
Variable1 = 5
Variable2 = "Five"
Set Variable3 = New MyUserDefinedObjectType()
End Sub
Sub TestVariables()
MsgBox Variable1 & " is spelled " & Variable2
Variable3.SomeFunction
End Sub
对Load()内部的TestVariables的调用会产生正确的结果,但后续对TestVariables的调用将失败。如何让Variable1和Variable2保持其值? (在我的实际情况中,这些变量是我定义的对象,不能成为公共变量。)
事件顺序:
Load
存储在Module1
中,并与Worksheet1
上的表单按钮相关联。先按下这个。
随后,Worksheet2
中的ActiveX控件告诉ThisWorkbook
致电TestVariables
。
答案 0 :(得分:0)
当你拥有它时,它对我有用。为Variable1创建一个Watch(View - Watch Window)并选择Break When Value Changes。您应该能够看到它何时变为零。