你是不是懒的写给数组赋值的代码? 本来你应该应该用文本框控件数组,但是你用的是名字用遍历窗体上控件,提取文本框名字,数字的方式达到获取2维数组下标。 Dim i As Integer, j As Integer Dim strName As String Dim a As Object For Each a In Form1.Controls If TypeName(a) = "TextBox" Then Debug.Print a.Name strName = Replace(a.Name, "Text", "") i = CInt(Left(strName, 1)) j = CInt(Right(strName, 1)) data(i, j) = Val(a.Text) End If Next
粘贴几次就有几个控件数组成员了. 但是控件数组只能是一维的,你只需要略微换算一下就知道如何对应到二维数组内容了.
本来你应该应该用文本框控件数组,但是你用的是名字用遍历窗体上控件,提取文本框名字,数字的方式达到获取2维数组下标。
Dim i As Integer, j As Integer
Dim strName As String
Dim a As Object
For Each a In Form1.Controls
If TypeName(a) = "TextBox" Then
Debug.Print a.Name
strName = Replace(a.Name, "Text", "")
i = CInt(Left(strName, 1))
j = CInt(Right(strName, 1))
data(i, j) = Val(a.Text)
End If
Next