Office中国论坛/Access中国论坛

标题: Redim动态声明数组的使用 [打印本页]

作者: admin    时间: 2014-12-22 10:27
标题: Redim动态声明数组的使用
Redim 用法

Redim可动态声明数组。在很多开发场景中挺有用片
如需要根据后面计算的结果来设置数组的大小,可根据情况不断增加数组


但注意 加上 Preserve参数,可保留数组原有的内容,这个关键字挺有用处的
但注意: 如果减小数组的大小,则将丢失被排除的元素中的数据。




Private Sub 数组测试1()

Dim arrData1(), arrData2()


ReDim arrData1(1 To 3, 1 To 3)

ReDim Preserve arrData2(1 To 3, 1 To 13)
Debug.Print "arrData1=" & arrData1(2, 3)
Debug.Print "arrData2=" & arrData2(2, 3)

End Sub


具体 的使用说明


描述
用于过程级声明动态数组变量并分配或重新分配存储空间。
语法
ReDim [Preserve] varname(subscripts) [, varname(subscripts)] . . .ReDim 语句语法有以下部分:

部分描述
Preserve当更改现有数组最后一维的大小时保留数据。
varname变量名,遵循标准变量命名约定。
subscripts数组变量的维数,最多可以声明 60 维数组。subscripts 参数语法格式如下:upper [,upper] . . .
数组的下界总是零。

说明
ReDim 语句通常用于指定或修改动态数组的大小,这些数组已用带有空括号的 PrivatePublicDim 语句(没有维数下标)正式声明过。可以重复使用 ReDim 语句更改数组维数和元素数目。如果使用了 Preserve 关键字,就只能调整数组最后维的大小,并且不能改变数组的维数。例如,如果数组只有一维,就可以修改该数组的大小,因为该维是最后的也是仅有的一维。但是,如果数组有两个或更多维,就只能改变末维的大小并保留数组内容。下面的样例示范了如何不删除动态数组的原有内容而又增加末维的大小。

ReDim X(10, 10, 10). . .ReDim Preserve X(10, 10, 15)

小心 如果减小数组的大小,则将丢失被排除的元素中的数据。

变量初始化时,数值变量初始化为 0,字符串变量初始化为零长度字符串 ("")。在使用引用对象的变量前,必须使用 Set 语句将某个现有对象赋予该变量。在进行对象赋值以前,已声明的对象变量有特定值Nothing






欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3