Sub ArrTest()
Dim Arr() As Variant
Arr(1, 1) = "Test"
End Sub
我没有对数组进行维度,因为我不知道它需要的大小。我最终会将这个数组写入电子表格。我试图将将在未来写入的单元格的左上角分配为" test"。
现在如果我理解正确,动态数组开始索引为0,所以第一个元素实际上是Arr(0,0)。我尝试了Arr(0,0)并得到了同样的错误。
我想真正的问题是:
如何为未定义动态数组的元素赋值?
答案 0 :(得分:1)
在使用之前,您必须将数组调暗到一个大小。这很简单:
Sub ArrTest()
Dim Arr() As Variant
redim Arr(0 to 1, 0 to 1)
Arr(1, 1) = "Test"
redim preserve Arr(0 to 2, 0 to 1)
Arr(2, 1) = "Test2"
End Sub
redim
方法将重新定义数组。使用关键字Preserve
将确保在重新定标期间存储在数组中的数据不会丢失。