VBA:在sub中调用Forms

时间:2014-10-06 08:44:28

标签: excel vba

从子服务器调用UserForm时遇到了很大的问题。

这是我的代码的一部分:

Sub TestForArray(ObjectName,FormName As String)       

Forms(FormName).Controls(ObjectName).List = NewArr

End sub

当我在Private Sub中调用此sub时,就像这样

Private Sub UserForm_Initialize()

Call TestForArray("Form1", "ComboBox1")

End Sub

我得到错误; " Sub或Function未定义"并突出显示表单

这个词

我做错了什么?

1 个答案:

答案 0 :(得分:1)

如果目标是让一个Sub可以从不同的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

Private Sub UserForm_Initialize()
 Call TestForArray(Me, "ComboBox1")
End Sub

问候

阿克塞尔