我在表单上有一些组合框,我希望每个框RowSource
引用我设置的标记。该标记将从表中过滤相应的下拉选项。
SELECT DropdownNames
FROM Table
WHERE DropdownCategory=[Screen].[ActiveForm]![Me].[Tag]
正确的语法是什么?使用标签是最好的方法吗?还是有更好的属性用于此目的?
答案 0 :(得分:1)
这是我建议的例子。
Option Explicit
Private Sub Form_Load()
Const DROPDOWN_SQL As String = "SELECT DropdownNames FROM Table WHERE DropdownCategory = "
Const DOUBLE_QUOTES As String = """"
Dim ctl As Control
Dim strRowsource As String
For Each ctl In Me.Controls
With ctl
' Only look at Tagged Combo Boxes
If (.ControlType = acComboBox) And (.Tag <> "") Then
' Set Dropdown Row Source
strRowsource = DROPDOWN_SQL & DOUBLE_QUOTES & .Tag & DOUBLE_QUOTES
.RowSource = strRowsource
End If
End With
Next
Set ctl = Nothing
End Sub