创建一个ComboBox对象以将其传递给Sub

时间:2017-12-21 14:38:02

标签: vba excel-vba combobox excel

我正在尝试从sub访问UserForm上的ComboBox。因此,我试图将Combobox对象传递给它。

但是,我似乎无法创建一个Combobox对象以便将其传入。在输入sub时它们总是空的。这就是我一直在尝试的:

Dim ctl As ComboBox

Set ctl = Me.cb_FcnName 'cb_FcnName is the name of the Combobox I'm trying to access

Call ColumnEntries2Combobox(ctl)

这是我的潜艇:

Private Sub ColumnEntries2Combobox(ByRef Combo As ComboBox)
     Combo.AddItem = Worksheets(WorksheetName).Cells(currRow, 2)
End Sub

出于某种原因,我似乎无法找到有关如何创建必要的组合框对象以传递到子...的文档。

提前感谢您的任何帮助!

1 个答案:

答案 0 :(得分:2)

AddItem是一种方法,而不是属性。对于一个方法,我们在空格后提供参数,而不是设置一个等于某个属性的属性。

所以改变

     Combo.AddItem = Worksheets(WorksheetName).Cells(currRow, 2)

     Combo.AddItem Worksheets(WorksheetName).Cells(currRow, 2)

这是一个常见的错误,所以一个简单的演示是:

object.Property = value

object.Method arg1, arg2