我的表格上有两个组合框。每个人都独立过滤表格。但我想根据两种选择过滤表单。
我将此代码放在更新事件后的复选框中,以使用两个组合框过滤表单,但它不起作用:
combo19是第一个组合框的名称,combo21是第二个组合框的名称。
Private Sub Check34_AfterUpdate()
Me.Filter = Me.Combo19 & Me.Combo21
Me.FilterOn = True
Me.Refresh
End Sub
答案 0 :(得分:1)
Filter属性是一个字符串表达式,由不带WHERE关键字的WHERE子句组成。例如,以下Visual Basic代码定义并应用过滤器以仅显示来自美国的客户:
Me.Filter = "Country = 'USA'"
Me.FilterOn = True
https://msdn.microsoft.com/en-us/vba/access-vba/articles/form-filter-property-access
在您的情况下,它看起来像:
Me.Filter = "field1 = '" & Me.Combo19 & "'" & " AND field2 = '" & Me.Combo21 & "'"
其中Field1和Field2应替换为记录源中的实际列名 此外,您的代码不会检查Combo19或Combo21是否为空。