jmcnamara/XlsxWriter

A Python module for creating Excel XLSX files.

Python

3,980

1,482 commits

updated Aug 4, 2026

See the code

README

XlsxWriter
==========

**XlsxWriter** is a Python module for writing files in the Excel 2007+ XLSX
file format.

XlsxWriter can be used to write text, numbers, formulas and hyperlinks to
multiple worksheets and it supports features such as formatting and many more,
including:

* 100% compatible Excel XLSX files.
* Full formatting.
* Merged cells.
* Defined names.
* Charts.
* Autofilters.
* Data validation and drop down lists.
* Conditional formatting.
* Worksheet PNG/JPEG/GIF/BMP/WMF/EMF images.
* Rich multi-format strings.
* Cell comments.
* Integration with Pandas and Polars.
* Textboxes.
* Support for adding Macros.
* Memory optimization mode for writing large files.

It supports Python 3.8+ and PyPy3 and uses standard libraries only.

Here is a simple example:

.. code-block:: python

   import xlsxwriter

   # Create an new Excel file and add a worksheet.
   workbook = xlsxwriter.Workbook("demo.xlsx")
   worksheet = workbook.add_worksheet()

   # Widen the first column to make the text clearer.
   worksheet.set_column("A:A", 20)

   # Add a bold format to use to highlight cells.
   bold = workbook.add_format({"bold": True})

   # Write some simple text.
   worksheet.write("A1", "Hello")

   # Text with formatting.
   worksheet.write("A2", "World", bold)

   # Write some numbers, with row/column notation.
   worksheet.write(2, 0, 123)
   worksheet.write(3, 0, 123.456)

   # Insert an image.
   worksheet.insert_image("B5", "logo.png")

   workbook.close()

.. image:: https://raw.github.com/jmcnamara/XlsxWriter/master/dev/docs/source/_images/demo.png

See the full documentation at: https://xlsxwriter.readthedocs.io

Release notes: https://xlsxwriter.readthedocs.io/changes.html

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

charts
libxlsxwriter
pandas
python
spreadsheet
xlsx
xlsx-files
xlsxwriter

jmcnamara/XlsxWriter

A Python module for creating Excel XLSX files.

Python

3,980

1,482 commits

updated Aug 4, 2026

See the code

README

XlsxWriter
==========

**XlsxWriter** is a Python module for writing files in the Excel 2007+ XLSX
file format.

XlsxWriter can be used to write text, numbers, formulas and hyperlinks to
multiple worksheets and it supports features such as formatting and many more,
including:

* 100% compatible Excel XLSX files.
* Full formatting.
* Merged cells.
* Defined names.
* Charts.
* Autofilters.
* Data validation and drop down lists.
* Conditional formatting.
* Worksheet PNG/JPEG/GIF/BMP/WMF/EMF images.
* Rich multi-format strings.
* Cell comments.
* Integration with Pandas and Polars.
* Textboxes.
* Support for adding Macros.
* Memory optimization mode for writing large files.

It supports Python 3.8+ and PyPy3 and uses standard libraries only.

Here is a simple example:

.. code-block:: python

   import xlsxwriter

   # Create an new Excel file and add a worksheet.
   workbook = xlsxwriter.Workbook("demo.xlsx")
   worksheet = workbook.add_worksheet()

   # Widen the first column to make the text clearer.
   worksheet.set_column("A:A", 20)

   # Add a bold format to use to highlight cells.
   bold = workbook.add_format({"bold": True})

   # Write some simple text.
   worksheet.write("A1", "Hello")

   # Text with formatting.
   worksheet.write("A2", "World", bold)

   # Write some numbers, with row/column notation.
   worksheet.write(2, 0, 123)
   worksheet.write(3, 0, 123.456)

   # Insert an image.
   worksheet.insert_image("B5", "logo.png")

   workbook.close()

.. image:: https://raw.github.com/jmcnamara/XlsxWriter/master/dev/docs/source/_images/demo.png

See the full documentation at: https://xlsxwriter.readthedocs.io

Release notes: https://xlsxwriter.readthedocs.io/changes.html

Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.

charts
libxlsxwriter
pandas
python
spreadsheet
xlsx
xlsx-files
xlsxwriter

Project health

Overall

4.6/10

Maintained

6/10

Code review

1/10
OpenSSF Scorecard

Latest release

3.2.9 · Sep 16, 2025

Releases this year

0

Significant stargazers

Baurzhan Muftakhidinov

39 followers · starred Jun 2014

Sean Evans

35 followers · starred Dec 2021

Ruben Vorderman

38 followers · starred Apr 2023

Raman Gupta

42 followers · starred Apr 2017