1

我的用户窗体上有两个组合框。第一个提供来自命名列表“类别”的选项。我在此 ComboBox 的行源中输入了单词 Category ,它为 Category 列表中的所有项目提供了下拉菜单。

类别列表中的每个项目本身就是一个命名范围。我希望第二个 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

这会将为第一个 ComboBox 选择的值写入一个单元格,然后尝试让第二个 ComboBox 读取这个...

任何帮助都会很棒!

乔什

4

2 回答 2

2

您需要获取单元格中文本指定的范围D10,而不仅仅是获取范围D10

将您的代码更改为:

Supplier.RowSource = Range(Worksheets("Input").Range("D10").Value)
于 2013-08-22T16:41:26.783 回答
0

多谢你们。我相信你们都是对的。纯粹是偶然的,我偶然发现了我的问题的原因。

我的主要列表被写成一个列 - RowSource 读得很好。

我的二级列表都写成行——RowSource 只是从中提取第一项。将行重新排列为列并更新名称管理器对其进行了排序。

多么令人恼火的回答……

再次感谢!

于 2013-08-23T07:28:01.943 回答