openpyxl.formatting.rule module

openpyxl.formatting.rule.CellIsRule(operator=None, formula=None, stopIfTrue=None, font=None, border=None, fill=None)[source]

Conditional formatting rule based on cell contents.

class openpyxl.formatting.rule.ColorScale(cfvo=None, color=None)[source]

Bases: RuleType

color

A sequence (list or tuple) that may only contain objects of the declared type

tagname = 'colorScale'
openpyxl.formatting.rule.ColorScaleRule(start_type=None, start_value=None, start_color=None, mid_type=None, mid_value=None, mid_color=None, end_type=None, end_value=None, end_color=None)[source]

Backwards compatibility

class openpyxl.formatting.rule.DataBar(minLength=None, maxLength=None, showValue=None, cfvo=None, color=None)[source]

Bases: RuleType

color

Values must be of type <class ‘openpyxl.styles.colors.Color’>

maxLength

Values must be of type <class ‘int’>

minLength

Values must be of type <class ‘int’>

showValue

Values must be of type <class ‘bool’>

tagname = 'dataBar'
openpyxl.formatting.rule.DataBarRule(start_type=None, start_value=None, end_type=None, end_value=None, color=None, showValue=None, minLength=None, maxLength=None)[source]
class openpyxl.formatting.rule.FormatObject(type, val=None, gte=None, extLst=None)[source]

Bases: Serialisable

extLst

Values must be of type <class ‘openpyxl.descriptors.excel.ExtensionList’>

gte

Values must be of type <class ‘bool’>

tagname = 'cfvo'
type

Value must be one of {‘min’, ‘percent’, ‘percentile’, ‘formula’, ‘max’, ‘num’}

val

Values must be of type <class ‘float’>

openpyxl.formatting.rule.FormulaRule(formula=None, stopIfTrue=None, font=None, border=None, fill=None)[source]

Conditional formatting with custom differential style

class openpyxl.formatting.rule.IconSet(iconSet=None, showValue=None, percent=None, reverse=None, cfvo=None)[source]

Bases: RuleType

iconSet

Value must be one of {‘3TrafficLights1’, ‘3TrafficLights2’, ‘3Symbols2’, ‘4Arrows’, ‘3Symbols’, ‘4RedToBlack’, ‘3ArrowsGray’, ‘5Quarters’, ‘4TrafficLights’, ‘5Rating’, ‘4Rating’, ‘5ArrowsGray’, ‘3Flags’, ‘3Signs’, ‘5Arrows’, ‘3Arrows’, ‘4ArrowsGray’}

percent

Values must be of type <class ‘bool’>

reverse

Values must be of type <class ‘bool’>

showValue

Values must be of type <class ‘bool’>

tagname = 'iconSet'
openpyxl.formatting.rule.IconSetRule(icon_style=None, type=None, values=None, showValue=None, percent=None, reverse=None)[source]

Convenience function for creating icon set rules

class openpyxl.formatting.rule.Rule(type, dxfId=None, priority=0, stopIfTrue=None, aboveAverage=None, percent=None, bottom=None, operator=None, text=None, timePeriod=None, rank=None, stdDev=None, equalAverage=None, formula=(), colorScale=None, dataBar=None, iconSet=None, extLst=None, dxf=None)[source]

Bases: Serialisable

aboveAverage

Values must be of type <class ‘bool’>

bottom

Values must be of type <class ‘bool’>

colorScale

Values must be of type <class ‘openpyxl.formatting.rule.ColorScale’>

dataBar

Values must be of type <class ‘openpyxl.formatting.rule.DataBar’>

dxf

Values must be of type <class ‘openpyxl.styles.differential.DifferentialStyle’>

dxfId

Values must be of type <class ‘int’>

equalAverage

Values must be of type <class ‘bool’>

extLst

Values must be of type <class ‘openpyxl.descriptors.excel.ExtensionList’>

formula

A sequence (list or tuple) that may only contain objects of the declared type

iconSet

Values must be of type <class ‘openpyxl.formatting.rule.IconSet’>

operator

Value must be one of {‘lessThanOrEqual’, ‘notEqual’, ‘notBetween’, ‘greaterThanOrEqual’, ‘notContains’, ‘between’, ‘equal’, ‘lessThan’, ‘endsWith’, ‘greaterThan’, ‘containsText’, ‘beginsWith’}

percent

Values must be of type <class ‘bool’>

priority

Values must be of type <class ‘int’>

rank

Values must be of type <class ‘int’>

stdDev

Values must be of type <class ‘int’>

stopIfTrue

Values must be of type <class ‘bool’>

tagname = 'cfRule'
text

Values must be of type <class ‘str’>

timePeriod

Value must be one of {‘nextMonth’, ‘yesterday’, ‘last7Days’, ‘today’, ‘thisWeek’, ‘lastMonth’, ‘tomorrow’, ‘nextWeek’, ‘lastWeek’, ‘thisMonth’}

type

Value must be one of {‘timePeriod’, ‘notContainsBlanks’, ‘aboveAverage’, ‘top10’, ‘expression’, ‘notContainsText’, ‘endsWith’, ‘colorScale’, ‘containsBlanks’, ‘containsText’, ‘iconSet’, ‘duplicateValues’, ‘dataBar’, ‘cellIs’, ‘containsErrors’, ‘notContainsErrors’, ‘beginsWith’, ‘uniqueValues’}

class openpyxl.formatting.rule.RuleType[source]

Bases: Serialisable

cfvo

A sequence (list or tuple) that may only contain objects of the declared type

class openpyxl.formatting.rule.ValueDescriptor(*args, **kw)[source]

Bases: Float

Expected type depends upon type attribute of parent :-(

Most values should be numeric BUT they can also be cell references