vb高手求助~~

ReDim Preserve Matrix(Ubound(Matrix,1)+1,10)是什么意思?详细点。。
ReDim Preserve DynArray(Ubound(DynArray)+1) 为什么错了?

Matrix是二维数组,Preserve是重定义时保留数据,Redim是重定义数组大小,Ubound是获取数组某一唯的上限:
ReDim Preserve Matrix(Ubound(Matrix,1)+1,10) '重定义为第一维+1的二维数组
不过VB只能Redim最后一维,所以此语句会出错。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-15
第一行时错误的吧?
ReDim Preserve 数组必须指定起点和终点,所以你的第二行是错误的
第2个回答  2011-08-15
看看你的格式,大小是不是出错了,或者木马,或者病毒,不懂得来追问O(∩_∩)O~
第3个回答  2011-08-16

ReDim Preserve Matrix(Ubound(Matrix,1)+1,10)
重定义Matrix数组,并保留原有数据。
ReDim Preserve 只能重定义最后一维,此句错误,下面这句可用:
ReDim Preserve Matrix(Ubound(Matrix,1),Ubound(Matrix,2)+1)

ReDim Preserve DynArray(Ubound(DynArray)+1)
如果DynArray为一维数组,这句正确,如果DynArray为二维数组,这句错误。
如果DynArray为定长数组,这句错误,如:
dim DynArray(3)'这个数组是不能用ReDim Preserve重定义,下面那句错误:
ReDim Preserve DynArray(Ubound(DynArray)+1)
正确用法如下:
dim DynArray()
redim DynArray(0)'如果没有这句,下面那句是错误的(不一定非得是0)
ReDim Preserve DynArray(Ubound(DynArray)+1)
第4个回答  2011-08-16
ReDim Preserve DynArray(Ubound(DynArray)+1)
这个是对一维数组长度的动态定义
ReDim Preserve Matrix(Ubound(Matrix,1)+1,10)
这个目的是对二维数组长度动态定义,但是二维数组只支持对第二维的长度定义。
使用二维数组的时候,可以判断数据量直接定义二维的大小,不要控制长度。
相似回答
大家正在搜