VBA数组(四)数组函数

论坛 期权论坛 期权     
Excel和Access学习笔   2019-6-9 21:27   4054   0

VBA中操作数组的函数主要有以下几个,LBound函数和UBound函数、Array函数、IsArray函数、Erase函数、Split函数、Join函数,后面分两节介绍数组函数。


LBound和UBound函数


介绍声明数组时说明过数组每个维度都有下界和上界,每个维度的下届和上界都可以自定义设置,它们通常用于获得动态数组不同维度的上界和下界。语法结构如下,分别获得某个数组某个维度的下界和上界:
LBound(数组名[,维数])
UBound(数组名[,维数])
其中“维数”为1时表示“一维”,为2时表示“二维”,为3时表示“三维”,依次类推,如果省略该参数,默认为一维。具体演示如下。




由于LBound和UBound为函数,返回的值需要赋值给变量,示例中定义了i、h、k变量来接收返回值。
示例以一个三维的静态数组为例,声明静态数组的,三个维度分别是1 to 2 、2 to 5和默认下界0 to 3,所以变量i为Arr第一维的下届结果为1,变量h为Arr第二维的上界为5,变量k为Arr数组第三维的下界为默认的0。


Array函数

Array函数主要用于创建新数组,与上节介绍的数组赋值相似,Array函数可以将一组值赋值给一个数组。
其语法格式如下:
变体型变量名=Array(数据集)
1、由Array函数返回的数组只能赋值给一个Variant型变量,不能赋值给已声明数组变量的变量。
2、函数中的数据集是由一些常数构成的数据集合,各值之间用逗号间隔。
3、通过Array函数创建的数组由Option Base确定,如果忽略,默认下界值为0。
4、Array函数返回的数组是动态数组,其初始大小是Array函数的参数数量,可以使用ReDim和ReDim Preserve来对所创建的数组重新定义维数。



示例中定义了Arr1变体型变量,通过Array函数将("一", "二", "三", "四", "五", "六", "日")赋值给Arr1变量,变成数组,默认的下界为0。最后Arr1(3)为次序第四个元素为“四”。
对于确定的元素值时,使用Array函数会比较方便。


IsArray函数

IsArray函数可检查指定的变量是否为一个数组,如果指定的变量是数组,返回值为True,否则返回False。这对于Variant变体型变量,在程序中类型可能发生改变,IsArray函数常用。



示例中声明Myarr1 和Myarr2为变体型变量,Myarr1通过将单元格区域A2:C3的赋值变成数组,而Myaar2通过Array函数变成数组。所以通过IsArray函数检查结果都为True。


今天下雨
本节介绍了数组函数的LBound函数和UBound函数、Array函数、IsArray函数,后面会补充剩下的数组函数,祝大家学习快乐。




Live and Learn
微信公众号:EXCEL-NOTE
(长按二维码关注)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:45
帖子:9
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP