1 数组嵌套的知识
1维数组的嵌套并非2维数组
二维数组的嵌套并非三维数组
2 数组的嵌套写法
1维数组的嵌套:arr(m)(i)
2维数组的嵌套:arr(m)(i,j)
Sub test1001()
Debug.Print "测试一维数组和其嵌套"
'一维数组
arr1 = Array(1, 3, 5, 7, 9)
arr2 = Array(2, 4, 6, 8, 10)
'一维数组的嵌套
arr3 = Array(arr1, arr2)
'Debug.Print arr3(1, 1) '证明了一维数组的嵌套,只是嵌套类型,不是2维数组
Debug.Print arr3(1)(1)
Debug.Print
Debug.Print "测试二维数组和其嵌套"
Dim arr51()
ReDim arr51(3, 3)
'2维数组
For I = 1 To 3
For J = 1 To 3
arr51(I, J) = 2 * I * J
Debug.Print arr51(I, J);
Next
Debug.Print
Next
Debug.Print
Debug.Print arr51(1, 1)
Debug.Print
Dim arr52()
ReDim arr52(4, 4)
'2维数组
For I = 1 To 4
For J = 1 To 4
arr52(I, J) = 3 * I * J
Debug.Print arr52(I, J);
Next
Debug.Print
Next
Debug.Print
Debug.Print arr52(1, 1)
Debug.Print
'2维数组的嵌套
arr53 = Array(arr51, arr52)
Debug.Print arr53(1)(1, 1) '二维数组的嵌套,也不需要2个数组行列相同
Debug.Print
Debug.Print "测试二维数组和其嵌套,第2种办法,[{}] 这种写法必须index从1开始"
'2维数组
'arr11 = [{1,3,5};{5,7,9}]
'arr12 = [{2,4,6};{6,8,10}]
arr11 = [{1,3,5;5,7,9}]
arr12 = [{2,4,6;6,8,10}]
Debug.Print arr11(1, 1)
'2维数组的嵌套
arr13 = Array(arr11, arr12)
Debug.Print arr13(1)(1, 1)
Debug.Print "测试二维数组和其嵌套,第3种办法---[{,,, ; ,,,}]只有一种写法 []其他写法不是数组"
'2维数组
'arr21 = [{1,3,5};{5,7,9}]
'arr22 = [{2,4,6};{6,8,10}]
arr21 = [{1,3,5},{5,7,9}]
arr22 = [{2,4,6},{6,8,10}]
End Sub
其实我这上面的例子不算嵌套数组,而是组合数组
下面这张才是嵌套数组
嵌套数组还可以 transpose 为二维数组
http://club.excelhome.net/thread-640048-1-1.html
————————————————
版权声明:本文为CSDN博主「奔跑的犀牛先生」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xuemanqianshan/article/details/104011670