多语言展示
当前在线:302今日阅读:176今日分享:34

Excel VBA设置数组索引的基数和尾数_二维数组

Excel VBA在使用数组时,数组索引的基数和尾数对数组元素的引用至关重要。而VBA中数组索引的基数除默认情况之外,还可以人为进行设置。本经验以二维数组为例对VBA中数组索引的基数和尾数的设置进行介绍。
工具/原料
1

Office Excel

2

VBA

一、默认情况下VBA数组索引的基数和尾数

默认情况下,VBA数组索引的基数都为0,数组索引的尾数即为数组声明时括号内的数值。举例说明:Dim MyArry(10, 20)那么默认情况下,数组第一维和第二维的索引基数都是0;第一维的索引尾数是10,第二维的索引尾数是20。

二、使用Option Base [0 or 1]修改默认的数组索引的基数和尾数

VBA中也可以在模块的顶部用Option Base语句,对默认的数组索引基数进行设置,但是Option Base后面只能跟0或1,若为0则与默认情况相同,若为1,则将数组索引基数从默认的0修改为1。举例说明:二维数组第一维索引的基数和尾数:Option Base 1Sub ceshi()Dim MyArry(10, 20) As IntegerDim Low As IntegerDim Up As IntegerLow = LBound(MyArry, 1)Up = UBound(MyArry, 1)End Sub实例代码中数组MyArry第一维索引的基数为1,第一维索引的尾数为10。二维数组第二维索引的基数和尾数:Option Base 1Sub ceshi()Dim MyArry(10, 20) As IntegerDim Low As IntegerDim Up As IntegerLow = LBound(MyArry, 2)Up = UBound(MyArry, 2)End Sub实例代码中数组MyArry第一维索引的基数为1,第一维索引的尾数为20。

三、直接通过显式方式声明数组索引的基数和尾数

二维数组第一维索引的基数和尾数:Sub ceshi()Dim MyArry(3 to 5, 5 to 10) As IntegerDim Low As IntegerDim Up As IntegerLow = LBound(MyArry, 1)Up = UBound(MyArry,1)End Sub实例代码中数组MyArry第一维索引的基数为3,第一维索引的尾数为5。二维数组第二维索引的基数和尾数:Sub ceshi()Dim MyArry(3 to 5, 5 to 10) As IntegerDim Low As IntegerDim Up As IntegerLow = LBound(MyArry, 2)Up = UBound(MyArry,2)End Sub实例代码中数组MyArry第一维索引的基数为5,第一维索引的尾数为10。需要注意的是:这种声明方法MyArry(MinRow To MaxRow, MinCol To MaxCol)中MinRow、MaxRow、MinCol和MaxCol都是整数,且不能超过系统要求的数组最大长度,另外每一维索引的基数数值一定要小于或等于索引的尾数数值。

四、Excel表数据区域形成的“数组”其索引基数和尾数不受外部控制
1

先看实例代码:“二维数组”第一维索引的基数和尾数:Sub ceshi()Dim MyArry As VariantMyArry = Range('A1:C6').ValueDim Low As IntegerDim Up As IntegerLow = LBound(MyArry, 1)Up = UBound(MyArry, 1)End Sub以上为Excel表数据区域形成的“数组”,“数组”第一维索引的基数为1,第一维索引的尾数为6,且不受外部影响。“二维数组”第二维索引的基数和尾数:Sub ceshi()Dim MyArry As VariantMyArry = Range('A1:C6').ValueDim Low As IntegerDim Up As IntegerLow = LBound(MyArry, 2)Up = UBound(MyArry, 2)End Sub以上为Excel表数据区域形成的“数组”,“数组”第二维索引的基数为1,第二维索引的尾数为3,且不受外部影响。

2

以上便是以二维数组为例,对Excel VBA设置数组索引基数和尾数方法的介绍,希望对大家有用。

推荐信息