Использование массива из другого саба - PullRequest
0 голосов
/ 13 июня 2019

У меня есть подпрограмма (initialisation), которая содержит несколько массивов.Затем я создаю другую подпрограмму (testSub), которая должна получить доступ к одному из массивов в initialisation.Я не уверен, как это сделать, и буду признателен за любую помощь, которую вы можете предложить.

Sub инициализации:

Sub initialisation()

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

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

End Sub

testSub:

Sub testSub()

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

End Sub

Ответы [ 2 ]

4 голосов
/ 13 июня 2019

Вам нужно передать его как параметр, подобный этому:

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 Explicit, что заставит вас объявлять все ваши переменные.

2 голосов
/ 13 июня 2019

Вы также можете определить свои массивы вне сабов:

Option Explicit

Dim init_array As Variant, init_array_2 As Variant

Sub initialisation()
    init_array = Array("apple", "orange", "car")
    init_array_2 = Array("coconut", "keys", "blue")
End Sub
Sub testSub()
Dim element As Variant
For Each element In init_array 'Does not work currently
   [do stuff]
Next

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...