TXLSXConditionalFormats 는 이 XLSX 기능을 위한 API를 제공하며 원래 식별자를 유지합니다 TXLSXWorksheet.ConditionalFormats 는 이 XLSX 기능을 위한 API를 제공하며 원래 식별자를 유지합니다
는 이 XLSX 기능을 위한 API를 제공하며 원래 식별자를 유지합니다
function Add(const ARange: WideString; AOp: TXLSXCfOperator; const AFormula1: WideString): Integer;
function AddDataBar(const ARange: WideString; AColor: LongWord; AMinKind: TXLSCfValueKind; const AMinValue: WideString; AMaxKind: TXLSCfValueKind; const AMaxValue: WideString): Integer;
function AddColorScale2(...): Integer;
function AddColorScale3(...): Integer;
function AddIconSet(const ARange: WideString; ASetType: TXLSIconSetType): Integer;
function AddExpression(const ARange, AFormula: WideString): Integer;
function AddTextRule(const ARange: WideString; AKind: TXLSCfKind; const AText: WideString): Integer;
function AddTop10(const ARange: WideString; ARank: Integer; ABottom, APercent: Boolean): Integer;
function AddAboveAverage(const ARange: WideString; AAbove: Boolean): Integer;
function AddSimpleRule(const ARange: WideString; AKind: TXLSCfKind): Integer;
주요 멤버
| Range, Op, Formula1 and Formula2 | 주요 멤버 |
| Style | 속성과 메서드를 사용하여 워크시트, 범위 및 개체를 만들고 읽고 업데이트합니다 |
| DataBar, ColorScale and IconSet | 속성과 메서드를 사용하여 워크시트, 범위 및 개체를 만들고 읽고 업데이트합니다 |
| Priority and StopIfTrue | 참고 항목 |
| Text, Rank, Percent, Bottom and AboveAverage | 참고 항목 |
| TimePeriod | TXLSXConditionalFormat 및 TXLSXConditionalFormats 클래스 |
규칙 대상 범위
2.384.76부터 워크시트 로컬 대상은 단일 셀, 셀 사각형, $B:$D 같은 열 전체, $5:$8 같은 행 전체를 받습니다. 뒤집힌 끝점은 정규화되고, 공백·탭·줄바꿈으로 여러 영역을 구분합니다
절대 참조와 혼합 참조는 원래의 Range 텍스트를 유지합니다. 매칭은 1~1048576행, A~XFD열을 대상으로 하고 잘못된 형식이나 그리드 밖 영역은 건너뛰며, 같은 규칙의 유효한 영역은 setter가 새 예외를 던지지 않고 계속 활성 상태로 둡니다
시트 한정 참조와 외부 참조는 대상 영역이 아닙니다. 각 규칙은 자신의 워크시트에 속하고, 달러 기호는 일반적인 A1 참조 위치에만 올 수 있습니다
규칙 조회, 셀·범위 삭제, 조건부 서식 평가기는 같은 대상 지오메트리를 씁니다. 집계 규칙은 겹치는 영역을 한 번만 세고, 대상이 전체 그리드에 걸쳐 있어도 저장된 셀 값만 방문합니다
2.384.77부터 행/열 편집은 워크시트 그리드 안의 전체 축 규칙 대상도 변환합니다. 모든 행이나 열에 걸친 범위는 그 축을 편집해도 온전히 유지되고, 다른 축을 편집하면 대상이 이동하거나 줄거나 사라집니다
범위 클론은 완전 커버리지 계약을 유지합니다. 규칙이 복사되려면 모든 대상 영역이 소스 사각형 안에 들어와야 하고, 부분 교차만으로는 규칙이 복사되지 않습니다. 전체 축 대상은 대상이 그리드 안에 있는 한 행 전체 또는 열 전체 소스에서 클론할 수 있습니다
내부 편집은 필요할 때 대상을 분할하고 하나의 공통 앵커에서 동등하게 남는 부분을 병합해서, 상대 수식과 셀 비교 수식의 도메인을 보존합니다. 라이브러리는 삽입 중 Excel이 암시적으로 복사할 수 있는 그리드 끝 추가 서식까지 재현하지는 않습니다
TXLSXWorksheet
var Index: Integer;
begin
Index := Sheet.ConditionalFormats.AddExpression('B2:B100', 'B2<0');
Sheet.ConditionalFormats[Index].Style.SetFillBgColor($0000FF);
Sheet.ConditionalFormats.AddColorScale3('C2:C100', $0000FF, $00FFFF, $00FF00, cfvMinOfRange, '', cfvPercentile, '50', cfvMaxOfRange, '');
end;조건부 숫자 서식
Style.SetNumFormatId는 대상 셀의 기본 서식과 별개로 차등 숫자 서식을 설정합니다. ID 0은 명시적인 General 초기화이고, 오버라이드가 없으면 기본 서식이 그대로 적용됩니다
사용자 지정 서식 ID는 164 + Index이며, Index는 Workbook.NumberFormats.Add의 0 기반 반환값입니다. XLSX 저장은 조건부 규칙만 참조하는 서식도 유지하고, 서식 풀을 압축할 때는 ID를 갱신합니다
ODS 조건부 스타일
ODS 가져오기와 내보내기는 셀 비교 및 수식 규칙의 차등 스타일을 유지합니다. 폰트 색, 이름, 크기, 굵게, 기울임, 밑줄, 단색 또는 투명 배경, 그리고 ODS 숫자 서식 변환기가 지원하는 숫자 서식이 대상입니다
명시적인 검은색, 보통 굵기, 밑줄 없음, 투명 배경도 오버라이드로 남습니다. 규칙에 없는 속성은 대상 셀의 기본 서식을 계속 따릅니다
테마 색과 인덱스 색은 해석된 색으로 내보내지므로 모양은 유지되지만, 테마나 팔레트로서의 정체성은 ODS를 거쳐 라운드트립되지 않습니다. 폰트 스킴 메타데이터에 대한 ODS 매핑은 없습니다
ODS는 회계용 밑줄 대신 일반적인 한 줄 또는 두 줄 밑줄을 쓰고, 패턴 채우기는 배경색으로 표현됩니다. 테두리와 정렬 오버라이드는 TXLSDxfStyle에 노출되지 않습니다
검증된 Excel 16 ODS 가져오기는 강조 색, 명시적 초기화, 밑줄, 백분율 서식을 유지하지만 조건부 폰트 패밀리와 크기는 무시합니다. LibreOffice 26.2.5.2는 이 named-style 속성을 읽고, 그 변환 결과인 XLSX는 Excel에서도 이 속성을 유지합니다
2.384.75부터 ODS 셀 비교 및 수식 규칙은 행 전체, 열 전체, 넓은 범위를 포함한 완전한 대상에 걸쳐 압축된 반복 빈 셀 캐리어를 씁니다. 겹치는 규칙은 순서를 유지하고, 캐리어 전용 패딩은 HotXLS에서 다시 열 때 저장된 셀을 만들지 않습니다
TXLSXWorksheet