我有一个大约8个元素的数组。我想将它分配给另一个3个元素的较小数组。我该怎么做呢?这是我的代码,但我不断收到错误,“无法分配给数组” 谢谢你的帮助。
Dim largeArr() as variant
largeArr = Array(7, 8, 9, 10, 11, 12, 13, 14)
Dim smallArr(3) As Variant
smallArr=largeArr()
答案 0 :(得分:1)
要对数组进行子集化,您可以通过循环遍历所需的部分来为小数组提供大数组的单个值。
Sub test()
Dim largeArr(), smallArr(1 To 3) As Variant
largeArr = Array(7, 8, 9, 10, 11, 12, 13, 14)
For x = 1 To 3
smallArr(x) = largeArr(x + 5)
Debug.Print smallArr(x) 'Print small array in the Immediate Window
Next x
End Sub
在循环中,调整i
中的largeArr(x+i)
以到达大型数组的所需部分。