连接 2 个组合框
Linking 2 combo boxes
我想知道创建组合框的最佳方法,该组合框link用于选择另一个组合框。例如,在组合框 1 中选择 'fruits',组合框 2 中的选项为芒果、橙子和奇异果。当用户在组合框 1 中选择 'vegetables' 时,在组合框 2 中选项有胡萝卜、朝鲜蓟和西红柿。两个组合框都应 linked 到同一个 table 称为 Produce。
我在构建支持组合框 1 的查询时没有遇到问题,但不明白我如何才能link选择什么来支持组合框 2 的查询。
有几种方法可以做到这一点,但最简单的方法也是我最常使用的方法是在 Change
事件(或 AfterUpdate
, 取决于你的需要) Combobox1 被解雇了。
示例:
我有两张桌子
Animals
1 Dog
2 Cat
3 Mouse
4 Rabbit
Cars
1 Audi
2 BMW
3 Ferrari
4 Porsche
5 McLaren
在表单上我有两个组合框,第二个是基于第一个的选择,它只包含两个选项:动物、汽车。
示例代码:
Private Sub Combo1_Change()
Dim cmb1 As ComboBox: Set cmb1 = Me.Combo1
Dim cmb2 As ComboBox: Set cmb2 = Me.Combo2
Select Case cmb1.Value
Case "Animals"
cmb2.RowSource = "Animals" ' Table name Animals
Case "Cars"
cmb2.RowSource = "SELECT TOP 3 * FROM Cars" ' SQL command to table Cars
Case Else
cmb2.RowSource = "Animals"
End Select
End Sub
现在,每次 Combo1 中的值更改时,Combo2 的行源也会更改。
注意:您需要在表单加载时根据 Combo1 中的值设置默认行源 Combo2,以便 Combo2 在启动时不为空。
我想知道创建组合框的最佳方法,该组合框link用于选择另一个组合框。例如,在组合框 1 中选择 'fruits',组合框 2 中的选项为芒果、橙子和奇异果。当用户在组合框 1 中选择 'vegetables' 时,在组合框 2 中选项有胡萝卜、朝鲜蓟和西红柿。两个组合框都应 linked 到同一个 table 称为 Produce。
我在构建支持组合框 1 的查询时没有遇到问题,但不明白我如何才能link选择什么来支持组合框 2 的查询。
有几种方法可以做到这一点,但最简单的方法也是我最常使用的方法是在 Change
事件(或 AfterUpdate
, 取决于你的需要) Combobox1 被解雇了。
示例:
我有两张桌子
Animals
1 Dog
2 Cat
3 Mouse
4 Rabbit
Cars
1 Audi
2 BMW
3 Ferrari
4 Porsche
5 McLaren
在表单上我有两个组合框,第二个是基于第一个的选择,它只包含两个选项:动物、汽车。
示例代码:
Private Sub Combo1_Change()
Dim cmb1 As ComboBox: Set cmb1 = Me.Combo1
Dim cmb2 As ComboBox: Set cmb2 = Me.Combo2
Select Case cmb1.Value
Case "Animals"
cmb2.RowSource = "Animals" ' Table name Animals
Case "Cars"
cmb2.RowSource = "SELECT TOP 3 * FROM Cars" ' SQL command to table Cars
Case Else
cmb2.RowSource = "Animals"
End Select
End Sub
现在,每次 Combo1 中的值更改时,Combo2 的行源也会更改。
注意:您需要在表单加载时根据 Combo1 中的值设置默认行源 Combo2,以便 Combo2 在启动时不为空。