Ustawia klasyczny zakres AutoFiltra XLS i stosuje kryterium per-pole w jednym wywołaniu
Składnia
procedure ApplyAutoFilter(ARange: WideString; Field: Integer; Criteria1: Variant); overload;
procedure ApplyAutoFilter(ARange: WideString; Field: Integer; Criteria1: Variant; Operator: XlAutoFilterOperator; Criteria2: Variant); overload;
procedure ApplyAutoFilter(ARow1, ACol1, ARow2, ACol2: Integer; Field: Integer; Criteria1: Variant); overload;
procedure ApplyAutoFilter(ARow1, ACol1, ARow2, ACol2: Integer; Field: Integer; Criteria1: Variant; Operator: XlAutoFilterOperator; Criteria2: Variant); overload;
Uwagi
Przeciążenie z ciągiem znaków akceptuje zakres w stylu A1, np. A1:C5. Przeciążenie numeryczne używa indeksów wierszy i kolumn 1-based. Pole jest również 1-based w zakresie AutoFiltra
ApplyAutoFilter zastępuje istniejący zakres AutoFiltra na poziomie arkusza podanym zakresem, a następnie zapisuje te same rekordy kryteriów pól BIFF8 używane przez IXLSRange.Autofilter
Użyj TXLSWorksheet.AutoFilterColumns aby sprawdzić przechowywane kryteria per-pole po zastosowaniu lub odczycie klasycznego AutoFiltra XLS
Przykład
Workbook := TXLSWorkbook.Create;
try
Sheet := Workbook.Sheets[1];
Sheet.ApplyAutoFilter('A1:C5', 2, '>=100');
Workbook.SaveAs('filtered.xls', xlExcel97);
finally
Workbook.Free;
end;
Zobacz też