openpyxl /

Filename Size Date modified Message
204 B
Stop coverage reports being written in a test sub-directory.
122 B
Trim trailing white space throughout the project
160 B
Harmonise EOL for ReST files.
274 B
Keep API out of the repository.
4.6 KB
Added tag 2.5.8 for changeset e49d1f8b5ee8
1.5 KB
update authors list
192 B
1.1 KB
Remove the odict license from LICENCE.rst; odict is no longer in use
173 B
Remove traces of JSON.
1.2 KB
745 B
Backport coveralls config
499 B
Disable pytest-warnings which cause random test failures.
57 B
Bump lxml versions for 2.5
67 B
2.2 KB
Add Python 3.7 to classification.
486 B
Update shippable config.
2.3 KB
Backport coveralls config
coverage status


openpyxl is a Python library to read/write Excel 2010 xlsx/xlsm/xltx/xltm files.

It was born from lack of existing library to read/write natively from Python the Office Open XML format.

All kudos to the PHPExcel team as openpyxl was initially based on PHPExcel.

Mailing List

The user list can be found on

Sample code:

from openpyxl import Workbook
wb = Workbook()

# grab the active worksheet
ws =

# Data can be assigned directly to cells
ws['A1'] = 42

# Rows can also be appended
ws.append([1, 2, 3])

# Python types will automatically be converted
import datetime
ws['A2'] =

# Save the file"sample.xlsx")


The documentation is at:

  • installation methods
  • code examples
  • instructions for contributing

Release notes: