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 1. Field también está basado en 1 dentro del rango del Autofiltro
ApplyAutoFilter reemplaza cualquier rango de Autofiltro existente a nivel de hoja con el rango proporcionado, luego escribe los mismos registros de criterios de campo BIFF8 utilizados por IXLSRange.Autofilter
Un criterio de texto que inicia con un operador de comparación (>=, <=, <>, >, < o =) seguido de un número, como '>=100' o '=2.5', se almacena como una condición numérica, de modo que coincide con las celdas numéricas tal como sucede en Excel. Escriba el número con punto como separador decimal. Cualquier otro texto, incluido un valor suelto como '100', se almacena como una condición de texto
Use TXLSWorksheet.AutoFilterColumns para inspeccionar los criterios almacenados por campo después de aplicar o leer un Autofiltro 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