Applies a filter to a table, form, or report.
DoCmd.ApplyFilter [FilterName][, WhereCondition]
with the following parameters:
FilterName
The name of a filter saved as a query, or of a query to which a filter condition is to be attached.
WhereCondition
The WHERE clause of a SQL statement (the filter).
Private Sub cmdFilter_Click()
Dim strState As String, strFilter As String
strState = InputBox("Enter state whose customers will be shown:")
' If null string, clear filter
If strState = "" Then
DoCmd.ShowAllRecords
Else
strFilter = "txtState = '" & strState & "'"
DoCmd.ApplyFilter , strFilter
End If
Debug.Print Me.Filter
End Sub
Calling the ApplyFilter method is equivalent to setting the Filter property of a form.
The WhereCondition clause does not actually include the SQL WHERE keyword, as the example shows.
To clear a filter, you can either assign a null string to a form’s Filter property or call DoCmd.ShowAllRecords.
Either the FilterName or the WhereCondition argument should be supplied. If both are supplied, WhereCondition is used.