Dim B() As Double
ReDim B(m - 1, 3)
Dim A() As String
ReDim A(m, 4) As String
A = Split(Text1.Text, Chr(13) & Chr(10)) '这步会自动重定义数组大小
For i = 0 To (m - 2) '在这里下断点,检查A数组的大小
For j = 0 To 2
B(i, j) = CDbl(A(i + 1, j + 1)) 'split 后得到的是维数组,给二个下标会报错
Next j
Next i
----------------------------------------------
Dim B() As Double
Dim A() As String
j = Len(Text1.Text) '取原长度
Do
i = j '保存原长度
If Right(Text1.Text, 2) = vbCrLf Then '如果最后有一回车换行符
Text1.Text = Left(Text1.Text, i - 2) '干掉回车换行符
End If
j = Len(Text1.Text) '取新长度
Loop While i <> j '如果新长度不等于原长度,说明干掉了一个空行,继续循环,是否还有空行
A = Split(Text1.Text, Chr(13) & Chr(10)) '分解到数组A中,会自动重定义数组大小,只能得到一维数组
redim b(ubound(a)-2) '不要第一个和第二个,那就要少二个元素,使用UBOUND取数组最大下标。
'因为是0开始的,所以起始下标不用取。如果不能确定那也要取
For i = 1 To UBound(A) - 1
B(i - 1) = CDbl(A(i))
Next i
------------
表示没看出来你的二维数组是怎么来,怎么转换结果。
[此贴子已经被作者于2018-10-7 21:19编辑过]