VBA 动态数组:保留原始值技巧
在VBA中,动态数组可以使用ReDim语句进行重新定义大小,从而实现动态调整数组大小的功能。为了保留原始值,可以将原始数组的值复制到新的数组中。
以下是一个示例代码,演示如何动态调整数组大小并保留原始值:
Sub ResizeArrayAndPreserveValues()
Dim arr() As Integer
Dim i As Integer
'初始化数组
ReDim arr(1 To 5)
For i = 1 To 5
arr(i) = i
Next i
'输出原始数组
Debug.Print "Original Array:"
For i = 1 To UBound(arr)
Debug.Print arr(i)
Next i
'重新定义数组大小并保留原始值
ReDim Preserve arr(1 To 7)
'将原始值复制到新数组中
For i = 1 To UBound(arr) - 2
arr(i) = arr(i)
Next i
'输出新数组
Debug.Print "Resized Array:"
For i = 1 To UBound(arr)
Debug.Print arr(i)
Next i
End Sub
在上面的代码中,我们首先初始化了一个包含5个元素的数组,并将其值设置为1到5。然后,我们使用ReDim语句将数组大小调整为7,并使用Preserve关键字保留原始值。最后,我们将原始数组中的值复制到新数组中,以保留原始值。最终,我们输出原始数组和重新调整大小后的数组,以进行比较。
原文地址: https://www.cveoy.top/t/topic/m5Vh 著作权归作者所有。请勿转载和采集!