zoukankan      html  css  js  c++  java
  • VBA学习_2:数组:同类型的多个变量的集合

    声明数组:名称、数据类型和数组大小

    1、通过起始和终止索引号定义数组大小

      指定开始索引:Public | Dim 数组名称(a To b) As 数据类型, a和b为整数(不能是变量),分别表示数组的开始和终止索引号,可保存数据个个数(b-a+1)个

      未指定开始索引:Public | Dim数组名称(a) As 数据类型  ,从0开始到a个元素

    Dim arr(1 To 100) As Byte   '定义一个Byte类型,名称为arr,大小为100的数组
    Dim arr(99) As Byte   '定义一个Byte类型,名称为arr,大小为100的数组

    2、给数组元素赋值

    arr(20) = 56

    声明多维数组

      指定开始索引:Public | Dim 数组名称(a To b,  x To y) As 数据类型  

      未指定开始索引:Public | Dim 数组名称(b,  y) As 数据类型   

      定义一个b行,y列的二维数组

    声明动态数组

      Public | Dim 数组名称() As 数据类型 

    重新定义数组大小

      ReDim 数组名称(1 To a)  只能定义大小不能修改数据类型 

    创建数组的其他方法

    1、使用Array函数创建数组

    Sub arrytest()
        Dim arr As Variant
        arr = Array(1, 2, 3, 4)
        Msybos "arr数组的第二个元素为 : " & arr(1)
    End Sub
    

    2、使用Split函数分割字符串创建数组

    Sub arrytest()
        Dim arr As Variant
        arr = Split("char,huang,car,box", ",") '第一参数是字符串,第二个参数是分割符
        Msybos "arr数组的第二个元素为 : " & arr(1)
    End Sub
    

    3、通过单元格区域创建数组(索引从1开始)

    Sub arrytest()
        Dim arr As Variant
        arr = Range("A1:C3").Value '把A1:C3数据保存到数组
        Range("E1:G3").Value = arr '把数组数据保存到表格E1:G3中
        Msybos "arr数组的第二个元素为 : " & arr(1)
    End Sub
    

    数组的运算

    1、UBound(数组名称,数组维度n) 数组n维度上的最大索引号(n可以缺默认第一维度)

    Sub test()
        Dim arr(99) As Integer
        MsgBox UBound(arr)
    End Sub
    

    2、LBound(数组名称,数组维度n)数组n维度上的最小索引号(n可以缺默认第一维度)

    Sub test()
        Dim arr(99) As Integer
        MsgBox LBound(arr)
    End Sub
    

    3、UBound(数组名称,数组维度n)-LBound(数组名称,数组维度n)+1 :n维度上数组的元素个数

    4、Join(数组名称,拼接符号)函数把数组拼接为字符串(默认空格拼接)

    5、把数组写入单元格区域

    Range("A1").Value = arr(2)
    
    Sub test()
        Dim arr As Variant '定义一个Variant类型的变量
        arr = Array(1, 2, 3, 4, 5)
        '把数组arr数据写入活动的工作表的A1:A5中
        Range("A1:A5").Value = Application.WorksheetFunction.Transpose(arr) 'Transpose把行数据转为列
    End Sub
    

    声明常量的同时给常量赋值

      过程内部使用Const(本地常量): Const 常量名称 As 常量类型 = 存储在常量中是数据

      模块的第一过程之前使用Const(模块级常量) :Const 常量名称 As 常量类型 = 存储在常量中是数据

      模块的第一个过程之前使用Public(公共常量):Public 常量名称 As 常量类型 = 存储在常量中是数据

  • 相关阅读:
    波段是金牢记六大诀窍
    zk kafka mariadb scala flink integration
    Oracle 体系结构详解
    图解 Database Buffer Cache 内部原理(二)
    SQL Server 字符集介绍及修改方法演示
    SQL Server 2012 备份与还原详解
    SQL Server 2012 查询数据库中所有表的名称和行数
    SQL Server 2012 查询数据库中表格主键信息
    SQL Server 2012 查询数据库中所有表的索引信息
    图解 Database Buffer Cache 内部原理(一)
  • 原文地址:https://www.cnblogs.com/jp-mao/p/9852033.html
Copyright © 2011-2022 走看看