无法让级联组合框生效

时间:2015-07-31 21:10:27

标签: vba combobox access-vba filtering cascadingdropdown

我正在尝试制作级联组合框,但我似乎无法让它工作。例如,如果我在第一个组合框中选择特定计算机,则第二个组合框应仅显示与该计算机兼容的HDD。我还提供了一个我创建的数据库的链接。任何人都可以帮我解决这个问题吗?

我有两个包含字段的表格:

  • tblComputer(计算机)
  • tblHDD(HDD,Computer)

cboxComputer Row来源: SELECT tblComputer.Computer FROM tblComputer;

cboxHDD行来源: SELECT tblHDD.HDD,tblHDD.Computer FROM tblHDD;

Private Sub cboxComputer_AfterUpdate()
    Me.cboxHDD.RowSource = "SELECT HDD " & _
                           "FROM tblHDD " & _
                           "WHERE Computer = " & Nz(Me.cboxComputer) & _
                           "ORDER BY HDD"
End Sub

https://drive.google.com/file/d/0Bye-M8FI1tRURmQ0MEFzRjBCdWM/view?usp=sharing

1 个答案:

答案 0 :(得分:1)

数据库中的“计算机”字段是字符串数据类型。尝试在这个名称周围加上撇号:

Private Sub cboxComputer_AfterUpdate()
    Me.cboxHDD.RowSource = "SELECT HDD " & _
                       "FROM tblHDD " & _
                       "WHERE Computer = '" & Nz(Me.cboxComputer) & "' " & _
                       "ORDER BY HDD"
End Sub