TXLSXConditionalFormats udostępnia API tej funkcji XLSX i zachowuje oryginalne identyfikatory TXLSXWorksheet.ConditionalFormats Deklaracje
Deklaracje
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;
Deklaracje
| Range, Op, Formula1 and Formula2 | Najważniejsze elementy |
| Style | Używaj właściwości i metod do tworzenia, odczytu oraz aktualizowania arkuszy, zakresów i obiektów |
| DataBar, ColorScale and IconSet | Używaj właściwości i metod do tworzenia, odczytu oraz aktualizowania arkuszy, zakresów i obiektów |
| Priority and StopIfTrue | Przykład |
| Text, Rank, Percent, Bottom and AboveAverage | Zobacz także |
| TimePeriod | Zobacz także |
Zakresy docelowe reguł
Od wersji 2.384.76 cele w obrębie arkusza przyjmują pojedyncze komórki, prostokąty komórek, całe kolumny takie jak $B:$D i całe wiersze takie jak $5:$8; odwrócone końce są normalizowane, a spacje, tabulatory albo łamania wierszy rozdzielają wiele obszarów
Odwołania bezwzględne i mieszane zachowują swój oryginalny tekst Range; dopasowywanie używa wierszy od 1 do 1048576 i kolumn od A do XFD, pomija zniekształcone albo wykraczające poza siatkę obszary i utrzymuje poprawne obszary sąsiednie w stanie aktywnym, bez zgłaszania nowego wyjątku z settera
Odwołania z kwalifikacją arkusza i odwołania zewnętrzne nie są obszarami docelowymi; każda reguła należy do swojego arkusza, a znaki dolara mogą występować wyłącznie na zwykłych pozycjach odwołania A1
Wyszukiwanie reguł, usuwanie komórek i zakresów oraz ewaluator formatowania warunkowego używają tej samej geometrii celu; reguły agregujące liczą nakładające się obszary raz i odwiedzają wyłącznie zapisane wartości komórek, nawet gdy cel obejmuje pełną siatkę
Od wersji 2.384.77 edycje wierszy i kolumn przekształcają także cele reguł obejmujące całe osie wewnątrz siatki arkusza; rozpiętość obejmująca każdy wiersz lub kolumnę pozostaje kompletna przy edycji tej osi, natomiast edycje drugiej osi przesuwają, kurczą albo usuwają cel
Klonowanie zakresów zachowuje kontrakt pełnego pokrycia: każdy obszar docelowy musi mieścić się w prostokącie źródła, zanim reguła zostanie skopiowana, a samo częściowe przecięcie nie kopiuje reguły; cele całych osi dają się klonować ze źródła obejmującego cały wiersz albo całą kolumnę, dopóki cel pozostaje w siatce
Edycje wewnątrz zakresu zachowują względne dziedziny formuł wyrażeń i porównań komórek, dzieląc cel w razie potrzeby i scalając części, które pozostają równoważne we wspólnej kotwicy; biblioteka nie odtwarza dodatkowego formatowania końca siatki, które Excel może skopiować domyślnie przy wstawianiu
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;Warunkowe formaty liczbowe
Style.SetNumFormatId ustawia różnicowy format liczbowy niezależnie od formatu bazowego komórki docelowej; identyfikator 0 to jawne zerowanie do Ogólne, a brak nadpisania pozostawia format bazowy w mocy
Identyfikatory niestandardowych formatów to 164 + Index, gdzie Index to wynik Workbook.NumberFormats.Add numerowany od zera; zapis XLSX zachowuje formaty przywoływane wyłącznie przez reguły warunkowe i aktualizuje identyfikatory przy kompakcji puli formatów
Style warunkowe ODS
Import i eksport ODS zachowują style różnicowe reguł porównania komórek i wyrażeń: kolor, nazwę, rozmiar, pogrubienie, kursywę i podkreślenie czcionki, jednolite albo przezroczyste tło oraz formaty liczbowe obsługiwane przez konwerter formatów liczbowych ODS
Jawna czerń, normalna grubość czcionki, brak podkreślenia i przezroczyste tło pozostają nadpisaniami; atrybuty nieobecne w regule dalej używają formatowania bazowego komórki docelowej
Kolory motywu i indeksowane eksportują się jako rozwiązane kolory, więc ich wygląd przetrwa, ale tożsamość motywu albo palety nie przechodzi round-tripu przez ODS; metadane schematu czcionki nie mają mapowania na ODS
ODS używa zwykłego pojedynczego albo podwójnego podkreślenia zamiast podkreślenia księgowego, a wypełnienia wzorzyste są reprezentowane przez kolor tła; nadpisania obramowania i wyrównania nie są ujawniane przez TXLSDxfStyle
Zweryfikowany import ODS w Excelu 16 zachowuje kolory wyróżnień, jawne zerowania, podkreślenie i formatowanie procentowe, ale ignoruje warunkową rodzinę i rozmiar czcionki; LibreOffice 26.2.5.2 czyta te właściwości stylów nazwanych, a jego przekonwertowany XLSX zachowuje je w Excelu
Od wersji 2.384.75 reguły porównania komórek i wyrażeń ODS używają zwartych nośników powtórzonych pustych na swoich pełnych celach, w tym całych wierszy, całych kolumn i szerokich zakresów; nakładające się reguły zachowują swoją kolejność, a dopełnienie istniejące tylko w nośnikach nie tworzy zapisanych komórek po ponownym otwarciu przez HotXLS
TXLSXWorksheet