我正试图找到一种方法将多维数组传递给VBA中的Function
。我试过谷歌,但在途中找不到任何帮助我。
这就是我的尝试:
Public Function getData(Query()() As String) As Integer
但这只会导致环境直接错误,说它需要分隔符或')'。
答案 0 :(得分:1)
你不能。
Query()() as String
在VBA中不是有效的表达式。
这是如何在VBA中创建2D数组以及如何编写接受它的函数
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