Establece un rango de autofiltro XLS clásico y aplica un criterio por campo en una sola llamada
Sintaxis
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;
Observaciones
La sobrecarga de cadena acepta un rango de estilo A1 como A1:C5. La sobrecarga numérica usa índices de fila y columna basados en uno. Field también está en base uno dentro del rango del AutoFilter
ApplyAutoFilter sustituye cualquier rango de AutoFilter existente a nivel de hoja de cálculo por el rango suministrado y después escribe los mismos registros de criterios de campo BIFF8 que usa IXLSRange.Autofilter
Un criterio de texto que empieza con un operador de comparación (>=, <=, <>, >, < o =) seguido de un número, como '>=100' o '=2.5', se guarda como una condición numérica, de modo que coincide con las celdas numéricas igual que lo hace en Excel. Escriba el número con punto como separador decimal. Cualquier otro texto, incluido un valor suelto como '100', se guarda como una condición de texto
Use TXLSWorksheet.AutoFilterColumns para inspeccionar los criterios almacenados por campo después de aplicar o leer un AutoFilter XLS clásico
Ejemplo
Workbook := TXLSWorkbook.Create;
try
Sheet := Workbook.Sheets[1];
Sheet.ApplyAutoFilter('A1:C5', 2, '>=100');
Workbook.SaveAs('filtered.xls', xlExcel97);
finally
Workbook.Free;
end;
Véase también