1. 数组基础
数组的下标不一定是从0或1开始的。可以定义任意数,如 dim arr(10 to 20 , 20 to 50)
声明一维或多维静态数组时,完整方法为 Fruits(m to n)
Fruits(m to n, x to y)
简写方法为 Fruits(n)
Fruits(m, n)
,等同于Fruits(0 to n)
Fruits(0 to n, 0 to y)
2. 一维数组
2.1 声明方式–对应赋值方法
2.1.1 方式一: 动态数组() As Variant
声明方法:
Dim Fruits() As Variant
该语句声明了一个名为 Fruits
的动态一维数组
赋值方法:
Fruits = Array("apple", "banana", 123, 12, 1)
注意!!:只有声明为Variant
才能用Array()功能赋值,声明为具体类如String
则不行(会报错为'13':类型不匹配
)
注意!!:该动态数组中可以放入不同类型的元素,如Integer
String
Boolean
2.1.2 方式二:静态数组(n) As Type
声明方法:
Dim Fruits(3) As Type
该语句声明了一个名为 Fruits
的静态一维数组;这里的Type
既可以是具体类,也可以是Variant
赋值方法:
Fruits(2) = "apple"
Fruits(3) = "banana"
注意!!:静态数组可以跳跃赋值
注意!!:动态数组无法用此方法赋值
3. 二维数组
3.1 声明方式–对应赋值方法
声明方法:
Dim Fruits() As Variant
ReDim Fruits(行数, 列数)
以上代码声明了一个维度为(行数,列数)的二维数组Fruits
ReDim
方法重塑了Dim
声明的数组
ReDim
方法可以加入Preserve
关键字,成为:
Redim Preserve Fruits(行数,列数)
Preserve
在重塑数组大小的时候,将会保留原数组中的元素
Preserve
使得Redim
方法只能改变多维数组的最后一个维度(第一个参数);若试图改变其他维度则会报错