Skip to main content

A sphinx extension for making table from Excel file

Project description

A sphinx extension for making table from Excel file.

  • Depends on OpenPyXL

    • Supports xlsx file

  • Supports merged cell

  • Supports images

  • Supports Japanese

This extension generates a grid table string internally from Excel file.

Install and Set up

Install from PyPI.

$ pip install sphinxcontrib-xlsxtable

Configure conf.py

# conf.py
extensions = [
    'sphinxcontrib.xlsxtable',
]

Usage

reStructuredText directive:

.. xlsx-table:: Table Caption
   :file: path/to/xlsx/file.xlsx
   :header-rows: 1

Excel file:

https://raw.githubusercontent.com/kkAyataka/sphinxcontrib-xlsxtable/master/sample-excel.png

Rendered HTML:

https://raw.githubusercontent.com/kkAyataka/sphinxcontrib-xlsxtable/master/sample-rendering.png

Options

Caption (optional)

Specifies table caption string.

.. xlsx-table:: Table Caption
   :file: path/to/xlsx/file.xlsx

:file: (required)

Specifies path to Excel file. You can use relative path.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx

:header-rows: (optional)

Specified the number of lines are used as header.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :header-rows: 1

:sheet: (optional)

Generates a table from a sheet with the specified sheet name.

If this option is not specified, current active sheet is used.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :sheet: Sheet1

:start-row: (optional)

Specifies start row number.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :start-row: 2

:start-column: (optional)

Specifies start column number.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :start-column: 2

:include-rows: / :exclude-rows: (optional)

Specifies include or exclude rows. Exclude setting has priority.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :include-rows: 1-2 4 8
   :exclude-rows: 3 5-7

:include-columns: / :exclude-columns: (optional)

Specifies include or exclude columns. Exclude setting has priority.

.. xlsx-table::
   :file: path/to/xlsx/file.xlsx
   :include-columns: A-B 4
   :exclude-columns: C 5-6

CLI

You can use from CLI.

$ python -m sphinxcontrib.xlsxtable --sheet=Sheet1 --header-rows=1 test/_res/sample.xlsx
+----+-------+-------+--------+
| A1 | B1    | C1    | D1     |
+====+=======+=======+========+
| A2 | B2:B3 | C2    | D2     |
+----+       +-------+--------+
| A3 |       | C3:D3          |
+----+-------+-------+--------+
| A4 | B4    | C4    | - D4-1 |
|    |       |       | - D4-2 |
+----+-------+-------+--------+

LICENSE

  • MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sphinxcontrib-xlsxtable-1.1.1.tar.gz (12.2 kB view hashes)

Uploaded Source

Built Distribution

sphinxcontrib_xlsxtable-1.1.1-py3-none-any.whl (11.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page