Skip to main content

Product Page | Docs | API Reference | Demos | Blog | Code Samples | Free Support | Temporary License | EULA

Try our free online apps demonstrating some of the most popular Aspose.Cells functionality.

Overview

Aspose.Cells for Python via .NET is a powerful spreadsheet management library that allows developers to create, format, and manipulate Excel files programmatically without the need for Microsoft Excel. It supports features like:

  • Creating Pivot Tables

  • Advanced conditional formatting

  • Conversion to PDF, HTML, JSON

  • Charts, Smart Markers, OLE objects

  • Filtering data

Aspose.Cells API Features

  • Spreadsheet generation & manipulation via API

  • High-quality file format conversion & rendering

  • Print Microsoft Excel® files to physical or virtual printers

  • Combine, modify, protect, or parse Excel® sheets

  • Apply worksheet formatting and page setup

  • Create & customize Excel® charts, Pivot Tables, conditional formatting, slicers, tables & spark-lines

  • Convert Excel® charts to images & PDF

  • Formula calculation engine supporting basic and advanced Excel functions

Supported Read & Write Formats

  • Microsoft Excel®: XLS, XLSX, XLSB, XLSM, XLT, XLTX, XLTM, SpreadsheetML

  • OpenOffice: ODS, SXC, FODS

  • Text: JSON, TXT, CSV, TSV, Tab-Delimited

  • Web: HTML, MHTML

  • iWork®: Numbers

Save Excel® Files As

  • Microsoft Word®: DOCX

  • Microsoft PowerPoint®: PPTX

  • Microsoft Excel®: XLAM

  • Fixed Layout: PDF, XPS

  • Text: JSON, TXT, CSV, TSV, Tab-Delimited, XML

  • Image: TIFF, PNG, BMP, JPEG, GIF, SVG

  • Metafile: EMF

  • Markdown: MD

Examples

Create Excel file from scratch

# import the python package
import aspose.cells
from aspose.cells import License, Workbook, FileFormatType

# Instantiating a Workbook object
workbook = Workbook()
# Get the first worksheet
worksheet = workbook.worksheets[0]
# Get the "A1" cell
cell = worksheet.cells.get("A1")
# Write "Hello World" to  "A1" in the first sheet
cell.put_value("Hello World!")
# Saving this workbook to XLSX
workbook.save("HelloWorld.xlsx")

Convert Excel XLSX file to PDF

# import the python package
import aspose.cells
from aspose.cells import Workbook

# Instantiating a Workbook object
workbook = Workbook("HelloWorld.xlsx")
# Saving this workbook to PDF
workbook.save("HelloWorld.pdf")

Create a chart

from aspose.cells import Workbook
from aspose.cells.charts import ChartType

# Instantiating a Workbook object
workbook = Workbook()
# Adding a new worksheet to the Excel object
sheetIndex = workbook.worksheets.add()
# Obtaining the reference of the newly added worksheet by passing its sheet index
worksheet = workbook.worksheets[sheetIndex]
# Adding sample values to cells
worksheet.cells.get("A1").put_value(50)
worksheet.cells.get("A2").put_value(100)
worksheet.cells.get("A3").put_value(170)
worksheet.cells.get("A4").put_value(300)
worksheet.cells.get("B1").put_value(160)
worksheet.cells.get("B2").put_value(32)
worksheet.cells.get("B3").put_value(50)
worksheet.cells.get("B4").put_value(40)
# Adding sample values to cells as category data
worksheet.cells.get("C1").put_value("Q1")
worksheet.cells.get("C2").put_value("Q2")
worksheet.cells.get("C3").put_value("Y1")
worksheet.cells.get("C4").put_value("Y2")
# Adding a chart to the worksheet
chartIndex = worksheet.charts.add(ChartType.COLUMN, 5, 0, 15, 5)
# Accessing the instance of the newly added chart
chart = worksheet.charts[chartIndex]
# Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B4"
chart.n_series.add("A1:B4", True)
# Setting the data source for the category data of SeriesCollection
chart.n_series.category_data = "C1:C4"
# Saving the Excel file
workbook.save("Chart.xlsx")

Convert Excel workbook to JSON

from aspose.cells import Workbook

# Instantiating a Workbook object
workbook = Workbook()
# Obtaining the reference of the newly added worksheet
sheet = workbook.worksheets[0]
cells = sheet.cells
# Setting the value to the cells
cells.get("A1").put_value("First name")
cells.get("A2").put_value("Simon")
cells.get("A3").put_value("Kevin")
cells.get("A4").put_value("Leo")
cells.get("A5").put_value("Johnson")

cells.get("B1").put_value("Age")
cells.get("B2").put_value(32)
cells.get("B3").put_value(33)
cells.get("B4").put_value(34)
cells.get("B5").put_value(35)

cells.get("C1").put_value("Value")
cells.get("C2").put_value(123.546)
cells.get("C3").put_value(56.78)
cells.get("C4").put_value(34)
cells.get("C5").put_value(9)
# Saving the Excel file to json
workbook.save("Out.json")

Convert Excel to Pandas DataFrame

import pandas as pd
from aspose.cells import Workbook

# Create a new Aspose.Cells Workbook
workbook = Workbook()
# Get the first worksheet
worksheet = workbook.worksheets[0]
# Get the cells
cells = worksheet.cells
# Add header and data values to specific cells
cells.get("A1").value = "Name"
cells.get("B1").value = "Age"
cells.get("C1").value = "City"
cells.get("A2").value = "Alice"
cells.get("B2").value = 25
cells.get("C2").value = "New York"
cells.get("A3").value = "Bob"
cells.get("B3").value = 30
cells.get("C3").value = "San Francisco"
cells.get("A4").value = "Charlie"
cells.get("B4").value = 35
cells.get("C4").value = "Los Angeles"

rowCount = cells.max_data_row
columnCount = cells.max_data_column

# Read the header row (row 0) and store column names
columnDatas = []
for c in range(columnCount + 1):
    columnDatas.append(cells.get_cell(0, c).value)

# Create an empty pandas DataFrame with column names from Excel
result = pd.DataFrame(columns=columnDatas, dtype=object)

# Read each data row (from row 1 onward) and add to the DataFrame
for i in range(1, rowCount + 1):
    rowarray = [cells.get_cell(i, j).value for j in range(columnCount + 1)]
    result.loc[i - 1] = rowarray

print(result)

Combine two workbooks into one

from aspose.cells import Workbook

# Load the first Workbook
SourceBook1 = Workbook("first.xlsx")
# Load the second Workbook
SourceBook2 = Workbook("second.xlsx")
# Combine the second workbook into the first workbook
SourceBook1.combine(SourceBook2)
# Save the combined workbook to a new file
SourceBook1.save("combined.xlsx")

Product Page | Docs | API Reference | Demos | Blog | Free Support | Temporary License | EULA

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

aspose_cells_python-26.9.0-py3-none-win_amd64.whl (59.2 MB view details)

Uploaded Python 3Windows x86-64

aspose_cells_python-26.9.0-py3-none-macosx_11_0_arm64.whl (72.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

aspose_cells_python-26.9.0-py3-none-macosx_10_14_x86_64.whl (75.6 MB view details)

Uploaded Python 3macOS 10.14+ x86-64

File details

Details for the file aspose_cells_python-26.9.0-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for aspose_cells_python-26.9.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 edc0760bee88084d0497699dd0b4ad7cedc2ad281d9d4ee40fcc3f92fc3e4f7f
MD5 df5f1e56ca727374ff399a041e63be8b
BLAKE2b-256 c946b6ecc2f6c73ddbd63e54be251002f814b3ec69b83fbdb1901a185ac698cc

See more details on using hashes here.

File details

Details for the file aspose_cells_python-26.9.0-py3-none-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for aspose_cells_python-26.9.0-py3-none-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8ec46651ca901fb06dca97887bc1c0c1e4e7569a6116ca58a9d77cf34fb0d539
MD5 f55bd4781b5848dbdae0b1862028d595
BLAKE2b-256 ba4d117e9ee9fe7eb05a9e662c86a8f9b9e212dbf0d3a4d9a799f1276c25c63b

See more details on using hashes here.

File details

Details for the file aspose_cells_python-26.9.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for aspose_cells_python-26.9.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f16ef4516881c40d8f325ac17127400ac70d39bc76eca3ec30344e6d68d5c3e9
MD5 4b30b602dfdb2c8878453661d3e68153
BLAKE2b-256 22e19e080561dc06442acd2b5011e94f7534c96772908e34f9448e489c96dd9d

See more details on using hashes here.

File details

Details for the file aspose_cells_python-26.9.0-py3-none-macosx_10_14_x86_64.whl.

File metadata

File hashes

Hashes for aspose_cells_python-26.9.0-py3-none-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 2566f430db68bf42478ddced515dff1b395592bc1d739806f024e85146b49983
MD5 23ac69acd3ce3c42e384e34c3a956bd6
BLAKE2b-256 c8452c6a1b78de3eedd474edcbe1b19c152a5f8f6b44c91ed8cfc111da00229b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

26.9.0 This release

4 files

26.8.0

4 files

26.7.0

4 files

26.6.0

4 files

26.5.0

4 files

26.4.0

4 files

26.3.0

4 files

26.2.0

4 files

26.1.0

4 files

25.12.0

4 files

25.11.0

4 files

25.10.0

4 files

25.9.0

4 files

25.8.0

4 files

25.7.4

1 file

25.7.0

5 files

25.6.0

5 files

25.5.1

2 files

25.5.0

3 files

25.4.0

5 files

25.3.0

5 files

25.2.0

5 files

25.1.0

5 files

24.12.0

4 files

24.11.0

5 files

24.10.0

5 files

24.9.0

5 files

24.8.0

5 files

24.7.0

5 files

24.6.0

5 files

24.5.0

5 files

24.4.0

5 files

24.3.0

5 files

24.2.0

5 files

24.1.0

5 files

23.12.0

5 files

23.11.1

4 files

23.11.0

5 files

23.10.0

4 files

23.9.0

4 files

23.8.0

4 files

23.7.0

4 files

23.6.0

4 files

23.5.0

4 files

23.4.0

2 files

23.3.0

3 files

23.2.0

3 files

23.1.0

4 files

22.12.0

4 files

22.11.0

4 files

22.10.0

4 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page