数组
创建数组:
Dim 数组名(数组元素上下角标)[As 元素类型]
eg. Dim MyArray (1 To 3) As Integer
注意:1.如果不指定元素类型,则是Variant类型
向数组赋值:
eg.
MyArray(1) = 100
MyArray(2) = 200
MyArray(3) = 300
访问数组元素:
Debug.Print MyArray(2)
Debug.Print MyArray(2),MyArray(3)
遍历数组:
可以通过LBound和UBound动态获取数组的上下角标
eg. 1. Debug.Print LBound(MyArray),UBound(MyArray)
2. For Index = LBound(MyArray) To UBound(MyArray)
Debug.Print MyArray(Index)
Next Index
清除数组:
将数组中的数据进行重置
Erase MyArray
Option Base声明:
如果在声明变量时,只写了一个数字,表达的是最大的角标
注意:1. 声明需要放到最上方
2.默认最小角标就是0;只能设置0或1,设置其他值会报错
多维数组:
创建多维数组:
Option Base 1
Dim MyArray(2,3) As Integer => 创建两行三列数组
向多维数组赋值:
MyArray(1,1) = 10
MyArray(1,2) = 20
MyArray(1,3) = 30
MyArray(2,1) = 40
MyArray(2,2) = 50
MyArray(2,3) = 60
访问元素:
Debug.Print MyArray(2,2)
遍历二维数组,循环嵌套:
Dim RowNo As Integer,ColNo As Integer
For RowNo = 1 To 2
For ColNo = 1 To 3
Debug.Print MyArray(RowNo,ColNo)
Next ColNo
Next RowNo
遍历多维数组:
LBound(Array,n): 表示n维数组的最小角标
UBound(Array,n): 表示n维数组的最大角标