Repository navigation
v2.19.0
Conditional formatting rules now survive a round trip intact.
Fixed
- Six of the eleven rule kinds were written back incomplete. The reader
modelledtop10,aboveAverage,containsText,notContainsText,
beginsWith,endsWith,timePeriod,duplicateValuesanduniqueValues,
but the writer emitted only the type, style and priority for them: norank,
notext, nostdDev, notimePeriod, and noformulachildren. Opening a
workbook that used one of those rules and saving it back produced acfRule
Excel could not act on. A below-average rule was the worst case, because
losingaboveAverage="0"silently inverted it. - The reader now captures
text,rank,percent,bottom,aboveAverage,
equalAverage,stdDevandtimePeriod, the writer emits them, and rules
that carry a formula alongside their attributes keep it.
New
- Authoring factories for the rule kinds that could previously only be read:
ConditionalFormat.containsText,.notContainsText,.beginsWith,
.endsWith,.top10(withpercentandbottom),.aboveAverage(with
below,orEqualandstandardDeviations),.duplicateValues,
.uniqueValuesand.timePeriod. - The matching detail is exposed on
ConditionalFormat:text,rank,
rankIsPercent,rankFromBottom,aboveAverage,equalAverage,stdDev
andtimePeriod.
Excel stores a text rule as both an attribute and an equivalent formula and
expects the two to agree, so the factories generate the formula for you.