表单:如果用户删除过滤器,请清除过滤器组合

时间:2017-09-21 09:39:26

标签: ms-access access-vba ms-access-2010

我创建了连续表单,标题中包含组合框,以便用户轻松应用其中一个预定义过滤器。
如果用户设置过滤器,然后点击表单底部的内置Filtered矩形以删除过滤器,我想清空组合。
由于Filter事件在这种情况下不会触发,并且ApplyFilter事件在修改FilterOn之前运行,因此我无法依赖它们。

Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
    Debug.Print Now, "Apply", Me.FilterOn, Me.Filter    'returns the OLD values :-(
End Sub

有什么建议可以解决这个难题吗?我想我仔细地经历了每一次形式的活动,没有成功 否则我将隐藏内置的导航按钮,我希望尽可能多地保留内置工具。

1 个答案:

答案 0 :(得分:1)

您只需检查ApplyType事件中的ApplyFilter(0 =过滤器已清除,1 =过滤器已应用或已更改)。

Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
    If ApplyType = 0 Then
        'Clear that combobox
    End If
End Sub