A powerful library for manipulating and converting Excel (XLS, XLSX, XLSB), CSV, ODS, PDF, JSON, JPG, PNG, BMP, EMF, SVG and HTML files.
Project description
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)
Product Page | Docs | API Reference | Demos | Blog | Free Support | Temporary License | EULA
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file aspose_cells_python-25.6.0-py3-none-win_amd64.whl
.
File metadata
- Download URL: aspose_cells_python-25.6.0-py3-none-win_amd64.whl
- Upload date:
- Size: 63.2 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
bdaa988f69192b2f5812a38bbab56de1a95fccaa825725a16e91d0348558662d
|
|
MD5 |
4c27223271c380556bd515ab673c8972
|
|
BLAKE2b-256 |
fd8de5d42f43e385631e5929a12cdff4def6ae71a57b28a08b7506f066c3b7f8
|
File details
Details for the file aspose_cells_python-25.6.0-py3-none-win32.whl
.
File metadata
- Download URL: aspose_cells_python-25.6.0-py3-none-win32.whl
- Upload date:
- Size: 53.6 MB
- Tags: Python 3, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
e7fa64c6f43ad56d5e5ab4ffbd431f1913dc9286a7b1bcd5d8bee806af6f4739
|
|
MD5 |
dc8e0f1281137d00bbda948862161985
|
|
BLAKE2b-256 |
01332870605f0905bbcd83c8ff2901defc248e40849eae9d17235b5566dd2fcb
|
File details
Details for the file aspose_cells_python-25.6.0-py3-none-manylinux1_x86_64.whl
.
File metadata
- Download URL: aspose_cells_python-25.6.0-py3-none-manylinux1_x86_64.whl
- Upload date:
- Size: 93.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
649417afddc1c56cce2b64c01587a779ab99bd9c0e7166eac0534ef28b418891
|
|
MD5 |
00d2b73ed0052476fa2345f2dc67c21d
|
|
BLAKE2b-256 |
fedd34c237de691887ad588c8b4b0104dd2a528354d00651ad5e966342a1f27b
|
File details
Details for the file aspose_cells_python-25.6.0-py3-none-macosx_11_0_arm64.whl
.
File metadata
- Download URL: aspose_cells_python-25.6.0-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 70.2 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
f5d83829d3cae50003ba80e3d334f6cf5f18d292b9b0e0e68841d2493dc8854d
|
|
MD5 |
ed3a2acd5e09f84556c502be3741cc9a
|
|
BLAKE2b-256 |
797e974bc9fca4d16c2865a06a0ad41ef869d24959960f52cf60f51776e498cd
|
File details
Details for the file aspose_cells_python-25.6.0-py3-none-macosx_10_14_x86_64.whl
.
File metadata
- Download URL: aspose_cells_python-25.6.0-py3-none-macosx_10_14_x86_64.whl
- Upload date:
- Size: 88.7 MB
- Tags: Python 3, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
87f8fe2db3a774875ad5791c6947c402229c85324a1d52f5e9f8500090910f90
|
|
MD5 |
bfe9aa0e50ddeb38adcda6c16b9eaa6c
|
|
BLAKE2b-256 |
a6c1f285fc8c461af186dcd7f4be4f04e64062fdf0228b1a078a648d8c1ec56d
|