Skip to main content

A Python library for creating, reading, and modifying Excel files (.xlsx format)

Project description

Aspose.Cells for Python

A lightweight Python library for creating, reading, and modifying Excel files (.xlsx format) without requiring Microsoft Excel.

PyPI version Python License: MIT

Features

  • Create & Edit Excel Files: Create new workbooks or modify existing .xlsx files
  • Cell Operations: Read/write cell values, formulas, and apply formatting
  • Styling: Apply fonts, colors, borders, number formats, and alignment
  • Multiple Worksheets: Add, remove, and manage worksheets
  • Data Validation: Add dropdown lists, number ranges, and custom validation rules
  • Comments: Add and manage cell comments with author and rich text
  • Hyperlinks: Create links to URLs, emails, files, and internal references
  • Auto-Filters: Apply filtering to data ranges
  • Conditional Formatting: Apply rules-based formatting
  • CSV/JSON/Markdown Export: Save workbooks in multiple formats
  • Encryption: Password-protect Excel files with AES encryption
  • Workbook Protection: Protect workbook structure and worksheets

Installation

pip install aspose-cells-foss

Quick Start

Create a new Excel file

from aspose_cells import Workbook

# Create a new workbook
workbook = Workbook()

# Get the first worksheet
worksheet = workbook.worksheets[0]

# Set cell values
worksheet.cells["A1"].put_value("Hello")
worksheet.cells["B1"].put_value("World")
worksheet.cells["A2"].put_value(42)
worksheet.cells["B2"].put_value(3.14)

# Save the workbook
workbook.save("output.xlsx")

Read an existing Excel file

from aspose_cells import Workbook

# Open an existing workbook
workbook = Workbook("input.xlsx")

# Access a worksheet
worksheet = workbook.worksheets[0]

# Read cell values
value = worksheet.cells["A1"].value
print(f"Cell A1 contains: {value}")

Apply styling

from aspose_cells import Workbook

workbook = Workbook()
worksheet = workbook.worksheets[0]
cell = worksheet.cells["A1"]

cell.put_value("Styled Text")

# Get and modify the cell style
style = cell.get_style()
style.font.is_bold = True
style.font.color = "FF0000"  # Red
style.font.size = 14
cell.set_style(style)

workbook.save("styled.xlsx")

Add data validation (dropdown list)

from aspose_cells import Workbook, DataValidationType

workbook = Workbook()
worksheet = workbook.worksheets[0]

# Add a dropdown list validation
validation = worksheet.data_validations.add()
validation.type = DataValidationType.LIST
validation.formula1 = '"Option1,Option2,Option3"'
validation.add_area("A1:A10")

workbook.save("validation.xlsx")

Export to CSV

from aspose_cells import Workbook, SaveFormat

workbook = Workbook("input.xlsx")
workbook.save("output.csv", SaveFormat.CSV)

Password protection

from aspose_cells import Workbook

workbook = Workbook()
worksheet = workbook.worksheets[0]
worksheet.cells["A1"].put_value("Confidential Data")

# Save with password protection
workbook.save("protected.xlsx", password="mypassword")

# Open a password-protected file
workbook2 = Workbook("protected.xlsx", password="mypassword")

Requirements

  • Python 3.7 or higher
  • pycryptodome >= 3.15.0
  • olefile >= 0.46

Documentation

For more examples and detailed API documentation, see the examples directory.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

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

aspose_cells_foss-26.2.1.tar.gz (192.2 kB view details)

Uploaded Source

Built Distribution

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

aspose_cells_foss-26.2.1-py3-none-any.whl (218.0 kB view details)

Uploaded Python 3

File details

Details for the file aspose_cells_foss-26.2.1.tar.gz.

File metadata

  • Download URL: aspose_cells_foss-26.2.1.tar.gz
  • Upload date:
  • Size: 192.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for aspose_cells_foss-26.2.1.tar.gz
Algorithm Hash digest
SHA256 72ad84551955500a95d4ecbedb401607d6cad307bf359e3cce27fa756afbf0e9
MD5 3ab1798b94fffc783cd7eb8cc07cc344
BLAKE2b-256 7e267a0086a73b867cf5754f32241192f90cf2fa93ff080de84013435f399402

See more details on using hashes here.

File details

Details for the file aspose_cells_foss-26.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for aspose_cells_foss-26.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e33342690d39a44ce3785ab651a2194871513d96cdc5ab2d58daaa36d26498fa
MD5 81b33f93a91041798e5d05c4365ce043
BLAKE2b-256 c6b01a4e42e26d4cf1fb6d89df8f001cf687fe4bae79b2f7d345bfc014c6e1d9

See more details on using hashes here.

Supported by

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