Sætter et klassisk XLS AutoFilter-område og anvender ét kriterium pr. felt i ét kald
Syntaks
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;
Bemærkninger
String-overloadet accepterer et område i A1-notation, for eksempel A1:C5. Det numeriske overload bruger 1-baserede række- og kolonneindeks. Field er også 1-baseret inden for AutoFilter-området
ApplyAutoFilter erstatter ethvert eksisterende AutoFilter-område på regnearksniveau med det angivne område og skriver derefter de samme BIFF8-feltkriterie-records, som bruges af IXLSRange.Autofilter
Et tekstkriterie, der starter med en sammenligningsoperator (>=, <=, <>, >, < eller =) efterfulgt af et tal, som for eksempel '>=100' eller '=2.5', gemmes som en talbetingelse, så den matcher numeriske celler på samme måde som i Excel. Skriv tallet med punktum som decimaltegn. Al anden tekst, også en bar værdi som '100', gemmes som en tekstbetingelse
Brug TXLSWorksheet.AutoFilterColumns.Find(Field) til at inspicere de gemte kriterier pr. felt efter anvendelse eller indlæsning af et klassisk XLS AutoFilter
Eksempel
Workbook := TXLSWorkbook.Create;
try
Sheet := Workbook.Sheets[1];
Sheet.ApplyAutoFilter('A1:C5', 2, '>=100');
Workbook.SaveAs('filtered.xls', xlExcel97);
finally
Workbook.Free;
end;
See Also