首页 > 解决方案 > 使用来自另一个子的数组

问题描述

我有一个initialisation包含多个数组的 sub ( )。然后,我正在创建另一个子 ( testSub),它必须访问initialisation. 我不确定如何做到这一点,并希望您能提供任何帮助。

初始化子:

Sub initialisation()

   init_array = Array("apple", "orange", "car")

   init_array_2 = Array("coconut", "keys", "blue")

End Sub

测试子:

Sub testSub()

For Each element in init_array 'Does not work currently
   [do stuff]
Next

End Sub

标签: excelvba

解决方案


您需要将其作为参数传递,如下所示:

Option Explicit
Sub initialisation()

    Dim init_array As Variant, init_array_2 As Variant

    init_array = Array("apple", "orange", "car")
    init_array_2 = Array("coconut", "keys", "blue")
    testSub init_array

End Sub
Sub testSub(init_array As Variant)

    Dim element As Variant

    For Each element In init_array 'Does not work currently
       [do stuff]
    Next

End Sub

您还应该使用Option Explicitwhich 将强制您声明所有变量。


推荐阅读