Excel 声明公共变量并赋值-VBA

Excel 声明公共变量并赋值-VBA,excel,vba,variables,public,Excel,Vba,Variables,Public,有没有一种方法可以声明公共变量并赋值 这是sub中工作正常的代码: Option Explicit Sub test() Dim arrStatistics As Variant 'Set arrStatistics arrStatistics = Array("H/T - Goal Scored", "H/T - Goal Conceded", "H/T - Both teams Scored", "H/T - Over 0.5", "H/T - Over 1.

有没有一种方法可以声明公共变量并赋值

这是sub中工作正常的代码:

Option Explicit

Sub test()


    Dim arrStatistics As Variant

    'Set arrStatistics
    arrStatistics = Array("H/T - Goal Scored", "H/T - Goal Conceded", "H/T - Both teams Scored", "H/T - Over 0.5", "H/T - Over 1.5", "H/T - Over 2.5", "H/T - Result" _
                , "F/T - Goal Scored", "F/T - Goal Conceded", "F/T - Both teams Scored", "F/T - Over 0.5", "F/T - Over 1.5", "F/T - Over 2.5", "F/T - Result")

End Sub
这是一个声明变量作为
Public
的方式:

Public arrStatistics As Variant
但是当我使用这个时,我收到一个错误:

Public arrStatistics As Variant

'Set arrStatistics
arrStatistics = Array("H/T - Goal Scored", "H/T - Goal Conceded", "H/T - Both teams Scored", "H/T - Over 0.5", "H/T - Over 1.5", "H/T - Over 2.5", "H/T - Result" _
                , "F/T - Goal Scored", "F/T - Goal Conceded", "F/T - Both teams Scored", "F/T - Over 0.5", "F/T - Over 1.5", "F/T - Over 2.5", "F/T - Result")

否,必须在过程外部声明变量public

Option Explicit

Public arrStatistics As Variant
然后用一个过程初始化内容

Public Sub InitPublicVariabels()

    arrStatistics = Array("H/T - Goal Scored", "H/T - Goal Conceded", "H/T - Both teams Scored", "H/T - Over 0.5", "H/T - Over 1.5", "H/T - Over 2.5", "H/T - Result" _
            , "F/T - Goal Scored", "F/T - Goal Conceded", "F/T - Both teams Scored", "F/T - Over 0.5", "F/T - Over 1.5", "F/T - Over 2.5", "F/T - Result")

End Sub

但是,与其在代码中包含大量数据,还可以选择将数据放入隐藏的工作表中,这样就可以轻松地读入数组。编辑数据要方便得多,分离代码和数据也是一种很好的做法。

否,必须在过程之外声明变量public

Option Explicit

Public arrStatistics As Variant
然后用一个过程初始化内容

Public Sub InitPublicVariabels()

    arrStatistics = Array("H/T - Goal Scored", "H/T - Goal Conceded", "H/T - Both teams Scored", "H/T - Over 0.5", "H/T - Over 1.5", "H/T - Over 2.5", "H/T - Result" _
            , "F/T - Goal Scored", "F/T - Goal Conceded", "F/T - Both teams Scored", "F/T - Over 0.5", "F/T - Over 1.5", "F/T - Over 2.5", "F/T - Result")

End Sub
但是,与其在代码中包含大量数据,还可以选择将数据放入隐藏的工作表中,这样就可以轻松地读入数组。编辑数据更方便,分离代码和数据也是一种很好的做法。

对于不变的非数组值(即,它始终是相同的值),您还可以使用
常量,如:
公共常量SomeText As String=“这是一个常量!”
。但是,重申一下,这对数组不起作用。对于不变的非数组值(即,它始终是相同的值),您也可以使用
常量
,如下所示:
Public Const SomeText As String=“这是一个常量!”
。但是,重申一下,这对数组不起作用。