Excel VBA:子系统中的调用窗体
我有一个很大的问题,从一个子系统调用用户表单 这是我代码的一部分:Excel VBA:子系统中的调用窗体,excel,vba,Excel,Vba,我有一个很大的问题,从一个子系统调用用户表单 这是我代码的一部分: Sub TestForArray(ObjectName,FormName As String) Forms(FormName).Controls(ObjectName).List = NewArr End sub 当我在私人潜水艇上呼叫这艘潜水艇时,就像这样 Private Sub UserForm_Initialize() Call TestForArray("Form1", "ComboBox1")
Sub TestForArray(ObjectName,FormName As String)
Forms(FormName).Controls(ObjectName).List = NewArr
End sub
当我在私人潜水艇上呼叫这艘潜水艇时,就像这样
Private Sub UserForm_Initialize()
Call TestForArray("Form1", "ComboBox1")
End Sub
我得到了错误;“子功能或功能未定义”和HIGHlights表示单词形式
我做错了什么?如果目标是从不同的UserForms调用一个子集来初始化UserForm的控件,那么可以将UserForm本身作为参数 例如:
Sub TestForArray(oForm As UserForm, sObjectName As String)
aNewArr = [{1,2,3,4,5,6}]
oForm.Controls(sObjectName).List = aNewArr
End Sub
以及:
问候
Axel由于没有表单集合,因此发生错误。只有一个UserForms集合,但它不能仅用于带有索引号的UserForms名称。目标是什么?在初始化一个用户窗体时,是否在另一个用户窗体中设置组合框的列表?为什么?为什么不使用另一个Userform的_Initialize事件来初始化它?@AxelRichter感谢您的回复。因为我有很多不同的用户表单,其中有一些组合框。如果有机会调用这个函数来填充组合框,那就太好了。
Private Sub UserForm_Initialize()
Call TestForArray(Me, "ComboBox1")
End Sub