Excel VBAvariables值范围 – 为所有子项的variables赋值

我写了一个模块与几个潜艇,我需要一些variables在所有模块中具有相同的值。 我知道关于声明variables

Public varname as vartype 

但是我怎样才能给这样一个variables分配一个全局值呢?

谢谢

对于工作表对象(对于这个问题的任何对象),您需要执行以下操作:

在一个标准的代码模块中:

 Public varName As Excel.Worksheet 

Workbook_Open()事件中:

 Private Sub Workbook_Open() Set varName = Sheets("mySheet") End Sub 

然后,您可以在该工作簿的任何其他模块中引用varName ,它将指向您的工作表对象。


从你的问题/评论看,你实际上想要某种对象常量,这是不能在VBA中完成的 – 请参阅将工作簿声明为全局variables以获取更多信息。

如果你指的是一个数值types,比如StringInteger或者Long那么你可以使用一个常量而不是一个variables,但是一旦声明了这个常量的值,就不能改变它(常量的定义types)即

 Public Const someName As String = "Macro Man" Public Const someNumber As Long = "1234567890" Public Const someInt As Integer = "1453" 
Interesting Posts