Toggles or applies a classic XLS AutoFilter range and writes simple per-field criteria.
Syntax
procedure Autofilter; overload;
procedure Autofilter(Field: Integer; Criteria1: Variant); overload;
procedure Autofilter(Field: Integer; Criteria1: Variant; VisibleDropDown: Boolean); overload;
procedure Autofilter(Field: Integer; Criteria1: Variant; Operator: XlAutoFilterOperator; Criteria2: Variant); overload;
procedure Autofilter(Field: Integer; Criteria1: Variant; Operator: XlAutoFilterOperator; Criteria2: Variant; VisibleDropDown: Boolean); overload;
Remarks
The parameterless overload toggles the worksheet AutoFilter range for the current range. The criteria overloads create the range if it is not already defined, then write a BIFF8 AUTOFILTER condition for the 1-based field index.
Criteria values can be strings, numbers, or Boolean values. String criteria can use comparison prefixes such as =, <>, >, >=, <, and <=. A criteria string of = matches blanks, and <> matches non-blanks.
Example
Workbook := TXLSWorkbook.Create;
try
Sheet := Workbook.Sheets[1];
Sheet.Range['A1', 'C10'].Autofilter(1, 'Open');
Sheet.Range['A1', 'C10'].Autofilter(3, '>=100');
Workbook.SaveAs('filtered.xls', xlExcel97);
finally
Workbook.Free;
end;
See Also