# openpyxl.descriptors.excel module

Excel specific descriptors

class openpyxl.descriptors.excel.Base64Binary(name=None, **kw)

  Bases: `MatchPattern`

  pattern = '^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$'

class openpyxl.descriptors.excel.CellRange(name=None, **kw)

  Bases: `MatchPattern`

  allow_none = True
  pattern = '^[$]?([A-Za-z]{1,3})[$]?(\\d+)(:[$]?([A-Za-z]{1,3})[$]?(\\d+)?)?$|^[A-Za-z]{1,3}:[A-Za-z]{1,3}$'

class openpyxl.descriptors.excel.Extension(uri=None)

  Bases: `Serialisable`

  uri

    Values must be of type <class ‘str’>

class openpyxl.descriptors.excel.ExtensionList(ext=())

  Bases: `Serialisable`

  ext

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

class openpyxl.descriptors.excel.Guid(name=None, **kw)

  Bases: `MatchPattern`

  pattern = '{[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}\\}'

class openpyxl.descriptors.excel.HexBinary(name=None, **kw)

  Bases: `MatchPattern`

  pattern = '[0-9a-fA-F]+$'

class openpyxl.descriptors.excel.Percentage(**kw)

  Bases: `MinMax`

  max = 1000000
  min = -1000000
  pattern = '((100)|([0-9][0-9]?))(\\.[0-9][0-9]?)?%'

class openpyxl.descriptors.excel.Relation(*args, **kw)

  Bases: `String`

  allow_none = True
  namespace = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships'

class openpyxl.descriptors.excel.TextPoint(**kw)

  Bases: `MinMax`

  Size in hundredths of points. In theory other units of measurement can be used but these are unbounded

  expected_type

    alias of `int`

  max = 400000
  min = -400000

class openpyxl.descriptors.excel.UniversalMeasure(name=None, **kw)

  Bases: `MatchPattern`

  pattern = '[0-9]+(\\.[0-9]+)?(mm|cm|in|pt|pc|pi)'