方法如下:
Dim L As Long
Dim W As Long
L = xlsworkbook.Worksheets(1).[A65536].End(xlUp).Row'获得有效行数
W = xlsworkbook.Worksheets(1).[IV1].End(xlToLeft).Column获得有效列数
ReDim ARR(1 To L, 1 To W) As String'动态定义数组.
VB里数据定义过后,还可以用ReDim改变
dim a(10)
redim a(20)
还可以加Preserve以保持数据中原有的数据。
redim preserve a(30)
dim 数组名字()
括号里面空着就好了,用的时候,Redim一下。如楼上所说。
举例:
Dim d() As Integer '一开始声明的数组规模为0
可以分别用带有关键字Preserve或不带关键字Preserve的语句,重新声明数组,以改变规模:
例1:ReDim d(1 + 2) As Integer '重新定义数组的规模为2
例2:ReDim Preserve d(1 + 10) As Integer '重新定义数组的规模为10,重新定义将保留它们原来元素1与2中的数据。
比如:
dim d() as integer
redim d( 1 to 2) as integer
d(1) = 1
d(2) = 2
如果接下来:
redim d( 1 to 4) as integer
增加了2个元素,但是原来的d(1)和d(2) 都为0。
如果接下来:
redim Preserve d( 1 to 4) as integer
增加了2个元素,但是原来的d(1)和d(2)保留维持原来的值。