如何正确引用Excelcombobox的源代码的dynamic列表?
我的用户表单上有两个combobox。 第一个提供了来自命名列表“类别”的选项。 我在这个combobox的行源中input了“类别”这个单词,它能正常提供“类别”列表中所有项目的下拉菜单。
类别列表中的每个项目本身都是一个命名范围。 我想第二个combobox(供应商)读取在第一个选定的项目,然后提供选定的命名范围内的选项。 目前它只提供每个指定范围内的第一个项目。 我目前使用下面的代码为第一个combobox。
Private Sub Category_Change() Worksheets("Input").Range("D10") = Category.Value 'Worksheets("Input").Range("D10") = CStr(Worksheets("Input").Range("D10")) Supplier.RowSource = Worksheets("Input").Range("D10") End Sub
这将为第一个comboboxselect的值写入单元格,然后尝试获取第二个combobox来读取此…
任何帮助将是macros伟的!
玩笑
您需要获取单元格D10
的文本指定的范围,而不仅仅是获取范围D10
。
将您的代码更改为:
Supplier.RowSource = Range(Worksheets("Input").Range("D10").Value)
多谢你们。 我相信你们都是对的。 纯粹是偶然的,我偶然发现了我的问题的原因。
我的主要列表是作为一个列 – RowSource阅读正常。
我的第二个列表都写成行,哪个RowSource只是从第一个项目拉。 将行重新排列为列,并更新Name Manager对其进行sorting。
多恼人的答案
再次感谢!
- 根据第一个combobox填充第二个combobox
- VBA存储string,而不是范围在ListFillRange ActiveXcombobox
- Excel用户窗体combobox属性Rowsource框问题?
- Excelcombobox – 如何使用Tab键来select单元格?
- VBA Excel添加dynamic大小的范围到combobox列表
- Comobox和执行Excel C#
- VBA – dynamic范围填充combobox
- 填写Excel +从Microsoft Sql Management Studio数据库表填充active x comobo框
- 当单击combobox时运行macros