VBA编程08.数组

Posted 奔跑的金鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBA编程08.数组相关的知识,希望对你有一定的参考价值。

【数组简介】
数组其实就是一组相同类型的数据的有序集合,其形象表示就像线性表。在存储数据的时候,首先在内存中分配一个连续的存储空间,将各个元素按顺序存放在连续的存储单元格中。
【定义静态数组】
Dim 数据组(数据元素的上下界,...) As 数据类型
Dim a(10) As Integer \'其数组名为a 其下标从0开始,下界为10 期中可访问的元素为a(0)到a(10)
Dim b(1 To 10) As Double \'可访问元素为a(1)到a(10)
【Tips】
(1)多维数组的维数最高可达60维
(2)使用静态数组时,必须指明数组的上界和下界及数组的维数,且数组中的上下界必须使用常量,不能使用变量
(3)每个数组元素只能存储一个数据
【代码区域】

Private Sub 数组初始化()
    Dim yunnan(1 To 4) As String
    yunnan(1) = "昆明"
    yunnan(2) = "曲靖"
    yunnan(3) = "昭通"
    yunnan(4) = "大理"
    yunnan(4) = "玉溪"
    For Each city In yunnan
     Debug.Print city
    Next
End Sub

【执行结果】

【二维静态数组】
【代码区域】

Private Sub 矩阵赋值()
    Dim i As Integer
    Dim j As Integer
    Dim a(1 To 3, 1 To 5) As Integer
    \'使用i与j的乘积填入数组
    For i = 1 To 3
     For j = 1 To 5
      a(i, j) = i * j
      Next j
    Next i
    For i = 1 To 3
     For j = 1 To 5
      Debug.Print "a(" & i & ", " & j & ")=" & a(i, j) & Space(5);
      Next j
     Debug.Print
    Next i
      
End Sub

【结果展示】

【二维动态数组】
Dim 数组名() As 数据类型
Dim a() As Double

【代码区域】

Private Sub 数组赋值()
    Dim a(1 To 3) As Integer
    Dim b() As Integer
    Dim i As Integer
    \'初始化数组a中的值
    For i = 1 To 3
        a(i) = i
        Next
        b = a
        \'打印a数组的值
        Debug.Print "a数组的值为:"
        Debug.Print "a(1)=" & a(1)
        Debug.Print "a(2)=" & a(2)
        Debug.Print "a(3)=" & a(3)
        \'打印b数组的值
        Debug.Print "b数组的值为:"
        Debug.Print "b(1)=" & b(1)
        Debug.Print "b(2)=" & b(2)
        Debug.Print "b(3)=" & b(3)
End Sub

【结果展示】

 

以上是关于VBA编程08.数组的主要内容,如果未能解决你的问题,请参考以下文章

web代码片段

VBA 使用“或”条件执行直到循环

以编程方式(VBA,C#)将数组字符串设置为范围时,奇怪的单元格中字符数限制

动态数组的 Excel VBA 预编译测试

使用 VBA 数组函数对过滤数据进行数据损坏

VBA研究数组的定义和使用