기존 XLS 자동 필터 범위를 설정하고 한 번의 호출로 필드당 기준을 적용합니다
구문
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;
비고
문자열 오버로드는 A1:C5와 같은 A1 스타일 범위를 허용합니다. 숫자 오버로드는 1 기반 행 및 열 인덱스를 사용합니다. Field도 자동 필터 범위 내에서 1 기반입니다
ApplyAutoFilter는 기존 워크시트 수준 자동 필터 범위를 공급된 범위로 교체한 다음 IXLSRange.Autofilter에서 사용하는 것과 동일한 BIFF8 필드 기준 레코드를 씁니다
비교 연산자(>=, <=, <>, >, <, =)로 시작하고 그 뒤에 숫자가 오는 텍스트 기준(예: '>=100', '=2.5')은 숫자 조건으로 저장되어 Excel에서처럼 숫자 셀과 일치합니다. 숫자는 소수점 구분 기호로 마침표를 사용해 작성하세요. '100'처럼 값만 있는 텍스트를 포함해 다른 텍스트는 모두 텍스트 조건으로 저장됩니다
TXLSWorksheet.AutoFilterColumns를 사용하여 기존 XLS 자동 필터를 적용하거나 읽은 후 저장된 필드별 기준을 검사합니다
예제
Workbook := TXLSWorkbook.Create;
try
Sheet := Workbook.Sheets[1];
Sheet.ApplyAutoFilter('A1:C5', 2, '>=100');
Workbook.SaveAs('filtered.xls', xlExcel97);
finally
Workbook.Free;
end;
참조