Application.SetAutoFilter method (Project)

Sets the criteria for an AutoFilter for a specified field in a sheet view.

Syntax

expression.SetAutoFilter (FieldName, FilterType, Test1, Criteria1, Operation, Test2, Criteria2)

expression An expression that returns an Application object.

Parameters

Name Required/Optional Data type Description
FieldName Required String Name of the field.
FilterType Optional PjAutoFilterType Type of filter; can be one of the PjAutoFilterType constants. The default value is pjAutoFilterClear, which clears the AutoFilter.
Test1 Optional String Specifies the type of comparison for the first test. Requires that FilterType is pjAutoFilterCustom, and that Criteria1 specifies a value. Can be one of the comparison strings.
Criteria1 Optional String The value of the first comparison with the value of the field specified by FieldName.
Operation Optional String The logical operation if there is a second test. The Operation value can be "And" or "Or".
Test2 Optional String Specifies the type of comparison for the second test. Requires that FilterType is pjAutoFilterCustom, the Operation value must be set, and that Criteria2 specifies a value. The string can be one of the comparisons in the table for Test1.
Criteria2 Optional String The value of the second comparison with the value of the field specified by FieldName.

Comparison strings

Comparison string Description
"equals" The value of FieldName equals Criteria1.
"does not equal" The value of FieldName does not equal Criteria1.
"is greater than" The value of FieldName is greater than Criteria1.
"is greater than or equal to" The value of FieldName is greater than or equal to Criteria1.
"is less than" The value of FieldName is less than Criteria1.
"is less than or equal to" The value of FieldName is less than or equal to Criteria1.
"is within" The value of FieldName is within Criteria1.
"is not within" The value of FieldName is not within Criteria1.

Return value

Boolean

Remarks

To turn the AutoFilter feature on or off, see the AutoFilter method.

Note

A column name in a sheet view can have a different title than the name of the field it shows.

Example

The following example sets a custom AutoFilter for the "% Work Complete" field.

Sub TestAutoFilter() 
    If Not ActiveProject.AutoFilter Then 
        Application.AutoFilter 
    End If 
 
    Application.SetAutoFilter FieldName:="% Work Complete", FilterType:=pjAutoFilterCustom, _ 
    Test1:="equals", Criteria1:="0%" 
End Sub

If there is an AutoFilter set for the "% Work Complete" field, the following line of code clears the AutoFilter because the default value for the optional FilterType argument is pjAutoFilterClear.

Application.SetAutoFilter FieldName:="% Work Complete"

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.