2013-12-12 3 views
0

Я пытаюсь найти способ передать многомерный массив на мой Function в VBA. Я попробовал Google, но не нашел ничего, чтобы помочь мне на моем пути.Многомерный массив как параметр функции

Это то, что я пробовал:

Public Function getData(Query()() As String) As Integer 

Но это привело только в прямых ошибках от окружающей среды говорит, что ожидает разделитель или «)».

+0

:) Покажи мне, как ты объявили ваш массив 'Query()(), пожалуйста –

+0

Мой вопрос в том, как передать многомерный массив в функцию в VBA. Поэтому мне нужно будет знать, как это сделать. Спасибо, что постарались помочь @mehow – Feanaro

ответ

1

Вы не можете.

Query()() as String не является действительным выражение в VBA.


Это, как вы бы создать 2D массив в VBA и как написать функцию, которая принимаю его

Sub Main() 

    Dim arr(0 To 1, 0 To 1) As String 
    arr(0, 0) = "element 0,0" 
    arr(1, 0) = "element 1,0" 
    arr(0, 1) = "element 0,1" 
    arr(1, 1) = "element 1,1" 

    Call GetData(arr) 

End Sub 


Function GetData(myArray() As String) As Integer 

End Function 

и 3D + версия

Sub Main() 

    Dim arr(0 To 1, 0 To 1, 0 To 1) As String 
    arr(0, 0, 0) = "element 0,0,0" 
    arr(1, 0, 0) = "element 1,0,0" 
    arr(0, 1, 0) = "element 0,1,0" 
    arr(0, 1, 1) = "element 0,1,1" 
    arr(0, 0, 1) = "element 0,0,1" 
    arr(1, 0, 0) = "element 1,0,0" 
    arr(1, 1, 0) = "element 1,1,0" 
    arr(1, 0, 1) = "element 1,0,1" 
    arr(1, 1, 1) = "element 1,1,1" 

    Call GetData(arr) 

End Sub 


Function GetData(myArray() As String) As Integer 

End Function 
Смежные вопросы