openpyxl /

Filename Size Date modified Message
227 B
Exclude unused module from coverage. No idea if we'll ever use this auto-generated code.
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.4 KB
Added tag 2.5.3 for changeset a4494d23a4b6
1.5 KB
New Feature: Fold Rows
1.1 KB
Remove the odict license from LICENCE.rst; odict is no longer in use
173 B
Remove traces of JSON.
1.0 KB
Link removed because the site seems to have disappeared. Can't track this forever and there is now very little code that is derived from PHPExcel.
175 B
Add cache to pipelines config.
499 B
Disable pytest-warnings which cause random test failures.
57 B
Bump lxml versions for 2.5
67 B
2.2 KB
Remove traces of JSON.
486 B
Update shippable config.
2.1 KB
Include numpy tests in tox test matrix


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

Official 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")

Official documentation

The documentation is at:

  • installation methods
  • code examples
  • instructions for contributing

Release notes: