DoCmd ApplyFilter in Microsoft Access


DoCmd ApplyFilter to Tables, Forms or Reports

The Apply Filter method is used the restrict the records show in forms, reports and queries.  The following example demonstrates the Docmd.ApplyFilter command when used to restrict the selection of records by the State field in our combo box.

Here are the syntax and options for the apply filter command:

Access Docmd ApplyFilter MethodFilterName Optional Variant. A string expression that’s the valid name of a filter or query in the current database. When using this method to apply a server filter, the FilterName argument must be blank.

WhereCondition Optional Variant. A string expression that’s a valid SQL WHERE clause without the word WHERE.

The filter and WHERE condition you apply become the setting of the form’s Filter property.

You must include at least one of the two DoCmd.ApplyFilter method arguments. If you enter a value for both arguments, the WhereCondition argument is applied to the filter.

The maximum length of the WhereCondition argument is 32,768 characters.

If you specify the WhereCondition argument and leave the FilterName argument blank, you must include the FilterName argument’s comma.

Docmd ApplyFilter Example:
The following example uses the Docmd.ApplyFilter method to display only records that contain the state MD in the State field:

DoCmd.ApplyFilter , “State = ‘MD'”

An alternate method is to set the filter property setting of a form directly.  In this example we also use a combo box to select the state:

Form_F_Orders.Form.Filter = “State='” & Me.State_Combo & “‘”
Form_F_Orders.Form.Filteron = True


Microsoft Office VBA, MS Access 2003, 2007, 2010, 2013, 2016