在VBA中,动态数组是一种可以根据需要自动调整大小的数组。以下是建立和使用动态数组的一般步骤:
声明一个变量作为动态数组:使用Dim
语句声明一个变量,并在其后面加上圆括号,如Dim myArray() As DataType
。注意,这里的DataType
可以是任何数据类型,如Integer
、String
等。
使用ReDim
语句初始化数组的大小:在需要使用数组之前,使用ReDim
语句为数组分配内存空间。可以在ReDim
语句中指定数组的维数和大小,也可以使用Preserve
关键字保留数组中的现有数据。例如,ReDim myArray(5)
会将数组扩展为包含6个元素的数组,而ReDim Preserve myArray(10)
会将数组扩展为包含11个元素的数组,并保留现有的数据。
使用数组:在数组分配了内存空间后,可以使用索引来访问和修改数组中的元素。例如,myArray(0) = 10
会将数组中的第一个元素设置为10。
以下是一个简单的示例,演示了如何建立和使用动态数组:
Sub DynamicArrayExample()
Dim myArray() As Integer '声明一个动态数组
ReDim myArray(5) '初始化数组大小为6
'给数组赋值
myArray(0) = 10
myArray(1) = 20
myArray(2) = 30
myArray(3) = 40
myArray(4) = 50
myArray(5) = 60
'输出数组元素
For i = 0 To UBound(myArray)
Debug.Print myArray(i)
Next i
End Sub
运行上面的代码将会输出数组中的所有元素。请注意,UBound
函数用于确定数组的上界。