我在VBA相当新,并一直在教自己,如果这是一个愚蠢的问题,或者如果我犯了一个愚蠢的错误,请原谅我。
我正在使用一系列文本框制作用户表单。其中一些文本框是必需的,一些是可选的。我想创建一个数组来排序所需的文本框。我还认为这将是一个获得在VBA中制作动态数组的经验的机会,因此我决定创建一个类来充当数组。但是,当我尝试打开用户表单时,我得到"运行时错误' 424&#39 ;:对象必需"。
我复制错误是一个更简化的文件,所以我可以告诉你每一行。让我知道我做错了什么。我研究过有类似问题的人,但没有一个解决方案有效。
''''''''''''''''''Sheet1 code
Private Sub CommandButton1_Click()
UserForm1.Show
End Sub
''''''''''''''''''Userform code
Dim list1 As Class1
Private Sub UserForm_Initialize()
Set list1 = New Class1
list1.addTB (UserForm1.TextBox1)
End Sub
''''''''''''''''''Class code
Dim list() As MSForms.TextBox
Public size As Integer
Private Sub Class_Initialize()
size = -1 ' list starts as empty
End Sub
Public Sub addTB(tb As MSForms.TextBox)
size = size + 1
ReDim Preserve list(size)
Set list(size) = tb
End Sub
Public Function getTB(i As Integer)
getTB = list(i)
End Function
Public Sub doNothing()
End Sub