VB 怎么定义公共动态2维数组??在线等!~~

在VB 中,我要定义一个公共的N行6列的数据,怎么定义?我在模块中定义成Public SZ(N,6) As String,编译时,系统提示“编译错误:需要常量表达式”,说的是N不能为变量,我要定义成Public SZ() As String,这样的话,在一个按钮的单击事件中ReDim这个数组,怎么弄?在该按钮的单击事件中该数组符完值后,在另一个按钮的单击事件中,要用到该数组存储的内容,所以,要求数组存储的数据不能被清空。总之,我的要求就是,数组的列数为6列,行数随着程序的执行而赋值,即,行数不能确定。

第1个回答  2010-03-11
'在模块中
Public a0()
Public a1()
Public a2()
Public a3()
Public a4()
Public a5()
Public Function sz(n) '自定义动态二维数组
sz = Array(a0(n), a1(n), a2(n), a3(n), a4(n), a5(n))
End Function

Public Sub RedimSz(k) '重新分配这个二维数组空间
ReDim Preserve a0(k), a1(k), a2(k), a3(k), a4(k), a5(k)
End Sub

'在一个按钮的单击事件中
RedimSz (10) '重新分配这个二维数组空间
a4(10) = 100 '第10行第4列赋值100
Print sz(10)(4) '显示第10行第4列数据
第2个回答  2010-03-11
最好不要把6放在里面。

你可以直接定义为:

Dim hang,lie As Integer

Dim myArray(hang,lie)As 你要的类型

下面可以 lie=6

至于行数,你可以用循环结构,加上ReDim Preserve 来处理!

基本上二维数组都是以双层镶嵌For Next循环处理的!本回答被网友采纳
第3个回答  2010-03-11
public sz(,6) as string
相似回答