HotXLS Docs

TXLSXConditionalFormat / TXLSXConditionalFormats classes

Per-worksheet conditional-formatting rules using OOXML cfRule type="cellIs". Each rule applies a comparison operator (greaterThan, between, etc.) against one or two formulas over a cell range. The collection lives on TXLSXWorksheet.ConditionalFormats. Declared in lxHandleX.

TXLSXCfOperator declaration

type
  TXLSXCfOperator = (
    xlsxCfOpEqual,
    xlsxCfOpNotEqual,
    xlsxCfOpGreaterThan,
    xlsxCfOpLessThan,
    xlsxCfOpGreaterOrEqual,
    xlsxCfOpLessOrEqual,
    xlsxCfOpBetween,
    xlsxCfOpNotBetween);
      
xlsxCfOpBetween and xlsxCfOpNotBetween use both Formula1 and Formula2; the others use Formula1 only.

TXLSXConditionalFormat declaration

type
  TXLSXConditionalFormat = class
    constructor Create(const ARange: WideString; AOp: TXLSXCfOperator;
      const AFormula1, AFormula2: WideString);
    property Range: WideString;
    property Op: TXLSXCfOperator;
    property Formula1: WideString;
    property Formula2: WideString;
  end;
      

TXLSXConditionalFormat members

Range OOXML sqref string. A single range ('A1:A10') or a space-separated list of ranges ('A1:A10 C1:C10') are both legal.
Op Comparison operator.
Formula1, Formula2 Comparison thresholds. Formula2 is only used for between / notBetween rules.

TXLSXConditionalFormats declaration

type
  TXLSXConditionalFormats = class
    function Add(const ARange: WideString; AOp: TXLSXCfOperator;
      const AFormula1: WideString): Integer; overload;
    function Add(const ARange: WideString; AOp: TXLSXCfOperator;
      const AFormula1, AFormula2: WideString): Integer; overload;
    procedure Clear;
    property Count: Integer;
    property Items[Index: Integer]: TXLSXConditionalFormat; default;
  end;
      
Worksheet shortcut: Worksheet.AddConditionalFormat(Range, Op, Formula1[, Formula2]).

Example

begin
  // Highlight values greater than 100 in B1:B10.
  Worksheet.AddConditionalFormat('B1:B10', xlsxCfOpGreaterThan, '100');

  // Values between 1 and 5 in C1:C20.
  Worksheet.AddConditionalFormat('C1:C20', xlsxCfOpBetween, '1', '5');
end;
    

See also