Office中国论坛/Access中国论坛

标题: [求助]如何使用动态数组,有哪个高手可以进来看一下 [打印本页]

作者: yuanrongfa    时间: 2006-4-7 19:45
标题: [求助]如何使用动态数组,有哪个高手可以进来看一下
如果我想使用一个动态的数组,

dim a1() as string         '这样定义有没有错啊

dim i as integer

for i=0 to 9

    a1(i)=i

next



以上代码为什么会出现下界越标?我已经找过很多本书,和看过自带的帮助了,都没有明确的使用说明,有人可以说一下吗?谢谢
作者: 无忧    时间: 2006-4-7 19:54
Dim MyAry() ‘声明动态数组,在运行中用ReDim重定义。 ReDim MyAry(9, 5) ‘ReDim可用变量设置动态数组的边界。


执行ReDim时数组中的值会全部丢失。改变数组大小又不丢失数组值用Preserve关键字:


ReDim Preserve Array(UBound (Array)+1)’使用UBound函数引用上界,使数组增加一个元素


ReDim Preserve Array(10,Ubound(Array,2)+1)‘增加一元素(只能改变多维数组中最后一维的上界)





用了ReDim再这样写就对了
dim i as integer





for i=0 to 9





    a1(i)=i





next







作者: sgrshh29    时间: 2006-4-7 19:58
以下是引用yuanrongfa在2006-4-7 11:45:00的发言:


dim a1() as string         '这样定义有没有错啊

dim i as integer

'在这里重新定义数组

for i=0 to 9

    a1(i)=i                ‘不然这里就会有问题

以上代码为什么会出现下界越标?我已经找过很多本书,和看过自带的帮助了,都没有明确的使用说明,有人可以说一下吗?谢谢

所谓动态数组,指的是运行中可以改变元素个数,但是每次改变元素个数实际上就是重新定义数组。

[此贴子已经被作者于2006-4-7 12:02:47编辑过]






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