📅  最后修改于: 2023-12-03 15:07:18.247000             🧑  作者: Mango
在VBA中,数组是指一组同类型的数据元素,在程序中按照一定的顺序排列组成的高级数据类型。动态数组是指在程序执行期间根据需要动态地调整数组容量大小的数组类型。
声明动态数组的语法如下:
Dim arr() As DataType
其中:
arr()
:数组名,可以在代码中通过该名字调用数组。DataType
:数组中存储元素的数据类型,如整型、字符串型等。在VBA中,可以使用 Redim
关键字创建动态数组。Redim
可以让动态数组的大小随时调整。
Dim arr() As Integer
Redim arr(10) ' 创建一个长度为11的动态数组
上述代码创建了一个动态数组 arr
,使用 Redim
调整了它的长度为 11。
在调整了数组的长度之后,可以通过下标来给动态数组赋值或者修改元素:
arr(0) = 1
arr(1) = 2
上述代码给 arr
数组的前两个元素赋值。如果要增加动态数组的长度,可以使用 ReDim Preserve
关键字:
ReDim Preserve arr(20) ' 将数组的长度调整为 21
使用 Preserve
保留了原数组中已存在的元素。
要遍历动态数组,可以使用 For Each
循环:
For Each item In arr
' 具体操作
Next item
上述代码中的 item
就是数组 arr
中的每一个元素。
相比静态数组,动态数组的优势在于其大小可以动态调整。这意味着可以在程序运行时根据需要增加或减小数组的长度,从而更方便地处理数据。
动态数组对于需要动态调整数组大小的情况非常有用,特别是在处理大量数据时。在VBA中,使用 Redim
和 ReDim Preserve
可以方便地创建和修改动态数组。