VBA - 在更多模块中使用相同的变量

VBA - Use same variables in more modules

我想要三个这样总结的模块:

第一个模块

Sub settings()
 Dim variable1,variable2,variable3,_
  variable4,variable5,variable6 as String

 variable1="Stack"
 variable2="Overflow"
 variable3="Best"
 variable4="Site"
 variable5="Ever"
 variable6="I love it!"
End sub

第二个模块

Sub module2()
 'LINE CODE THAT CALLS "settings" MODULE (I want to know it!)

 'my sub that uses the six-variables above
End sub

第三个模块

Sub module3()
 'LINE CODE THAT CALLS "settings" MODULE (I want to know it!)

 'another sub that uses the six-variables above
End sub

提前致谢。

法比奥

您应该拥有以下模块:

模块 1:

Public variable1, variable2, variable3, variable4, variable5, variable6 As String
Sub settings()
  variable1 = "Stack"
  variable2 = "Overflow"
  variable3 = "Best"
  variable4 = "Site"
  variable5 = "Ever"
  variable6 = "I love it!"
End Sub

模块 2:

Sub module2()
  Module1.settings
  MsgBox "value : " & Module1.variable1

End Sub

在模块 2 中,您必须首先 运行 settings() 子例程,然后使用变量,因为对变量的赋值发生在 settings().

似乎这些变量将始终保持相同的值,如果是这种情况,那么我建议声明 public 常量,而不是使用下面的代码(参见 https://msdn.microsoft.com/en-us/library/office/gg264636.aspx

Public Const kConst1 As String = "Stack"
Public Const kConst2 As String = "Overflow"
Public Const kConst3 As String = "Best"
Public Const kConst4 As String = "Site"
Public Const kConst5 As String = "Ever"
Public Const kConst6 As String = "I love it!"

使用常量作为:

Sub Test_Const()
Debug.Print kConst1, kConst2, kConst3, kConst4, kConst5, kConst6
End Sub