属性“RowSource”无法显示在combobox上

如果将ListBox的.RowSource属性设置为命名范围,则可以在用户窗体的VBA显示和用户窗体的Excel显示中select行源。 但是,使用ComboBox,我只能在VBA显示器上看到这个。 如果在设置.RowSource属性后,我尝试将.AddItem到ComboBox对象中,我得到run time error 70, permission denied

 Private Sub UserForm_Initialize() With pres_unit .AddItem "kPa" .AddItem "bar" End With End Sub 

如何使用命名范围作为ComboBox的下拉选项的来源?

用户窗体的Excel截图

用户窗体的VBA截图

如果对单个列使用NamedRange ,则可以使用ComboBoxList属性:

 Private Sub UserForm_Initialize() ' create the Named Range "myNameRange" ' you can manually (or with variables) modify the Range("B2:B10") in "Sheet1" ThisWorkbook.Names.Add "myNameRange", Sheets("Sheet1").Range("B2:B10") With pres_unit .List = Range("myNameRange").value 'disallows user input, only values from list .Style = fmStyleDropDownList End With End Sub