ReDim
允许扩展我的数组。我想循环一个数组并展开它,因为我不知道我的数组将具有多长。
我发现无法扩展多维数组的第一个索引。
示例:
ReDim Preserve Cells(1 To 100, 20) As Integer ' This works.
ReDim Preserve Cells(1 To 200, 20) As Integer ' This doesn't.
有解决方法吗?如果没有这个,我无法弄清楚如何以优雅的方式编程。我曾经在C#
编程。
答案 0 :(得分:1)
您可以为内部数组使用用户定义的类型,并使用此用户定义类型的数组作为外部数组
看看下面的例子:
Private Type MyArray
strArray() As String
End Type
Private Sub RedimArray()
Dim intFirst As Integer, intSecond As Integer
Dim udt2D() As MyArray
'resize first dimension
ReDim udt2D(3) As MyArray
For intFirst = 0 To UBound(udt2D)
'resize second dimension for each separately
intSecond = intFirst * 10 + 1
ReDim udt2D(intFirst).strArray(intSecond)
Next intFirst
End Sub