Passer au contenu du pied de page
UTILISER IRONXL POUR PYTHON

Comment lire un fichier Excel en Python avec plusieurs feuilles

In Python, handling Microsoft Excel files is a common task, especially in data analysis, report generation, and automation workflows. Traditionally, libraries like openpyxl or pandas are used to manipulate Excel files. However, a lesser-known but powerful library called IronXL is gaining attention due to its robust capabilities and ease of use when working with Excel files in Python.

IronXL, a .NET-based library, enables reading and writing Excel files with various features such as handling multiple sheets, complex formatting, and supporting different Excel file formats. In this article, we’ll explore how to use IronXL Python to read Excel files with multiple sheets and demonstrate some of its key features and functionalities.

Introduction to IronXL

How to Read Excel File in Python With Multiple Sheets: Figure 1

IronXL for Python is a robust library designed to work with Microsoft Excel files. It allows developers to create, read, and manipulate Excel spreadsheets seamlessly. The main advantages of using IronXL include its ease of use, powerful functionalities, and the fact that it does not require Microsoft Excel to be installed on the server. Developers can read multiple files in an Excel file with ease.

How to Read Excel Files in Python with Multiple Sheets

Step 1: Import the IronXL Library.

Step 2: Add License Key.

Step 3: Load the Excel File.

Step 4: Accessing Sheets in the Workbook.

Why Use IronXL?

IronXL is ideal for various applications such as data analysis, reporting, and automation. Its intuitive API and comprehensive features make it a popular choice among developers. Some of the key features of IronXL include:

  • No Dependency on Microsoft Excel: IronXL does not require Microsoft Excel to be installed, making it suitable for server environments.
  • Support for Multiple Formats: It supports XLS files, XLSX files, and CSV file formats.
  • Cross-Platform Compatibility: IronXL works on Windows, macOS, Linux, Docker, Azure, and AWS.
  • Ease of Integration: With a natural and intuitive API, IronXL can be easily integrated into any Python project.

Step 1: Import the IronXL Library

Import IronXL using:

from ironxl import License, WorkBook, WorkSheet
from ironxl import License, WorkBook, WorkSheet
PYTHON

Step 2: Add License Key

IronXL works with a license key. Get your free license from here and place the license at the top of the code.

License.LicenseKey = "Your Key"
License.LicenseKey = "Your Key"
PYTHON

Step 3: Load the Excel File

You can load the Excel file using the WorkBook.Load() function. This method returns a Workbook object, representing the entire Excel file.

workbook = WorkBook.Load('sample.xlsx')
workbook = WorkBook.Load('sample.xlsx')
PYTHON

Step 4: Accessing Sheets in the Workbook

Once the workbook is loaded, you can access individual sheets. IronXL allows you to access sheets by name or index. Let’s assume your Excel file has multiple sheets.

To access all sheets in the workbook, you can iterate through them:

# Get sheet names from the workbook
sheet_names = workbook.WorkSheetsNames
print("Sheet Names:", sheet_names)

# Iterate through each sheet and read its contents
for sheet in workbook.WorkSheets:
    print(f"Sheet Name: {sheet.Name}")  # Access specific sheet
    for row in sheet.Rows:
        print([cell.Value for cell in row])  # Print each row's cell values
# Get sheet names from the workbook
sheet_names = workbook.WorkSheetsNames
print("Sheet Names:", sheet_names)

# Iterate through each sheet and read its contents
for sheet in workbook.WorkSheets:
    print(f"Sheet Name: {sheet.Name}")  # Access specific sheet
    for row in sheet.Rows:
        print([cell.Value for cell in row])  # Print each row's cell values
PYTHON

Advanced Features of IronXL

In addition to reading and writing data, IronXL comes with many advanced features that allow you to manipulate Excel files more effectively:

  • Cell Formatting: IronXL enables you to format cells with different styles, fonts, colors, and number formats.
  • Handling Different Excel Formats: It supports .xlsx, .xls, and .csv formats.
  • Performance: IronXL is optimized for high performance, making it suitable for working with large Excel files.
  • Write Data Back to Excel: Besides reading data, you can also modify and save changes to Excel files using IronXL.

Input Excel file

The Excel file has two sheets:

How to Read Excel File in Python With Multiple Sheets: Figure 2

How to Read Excel File in Python With Multiple Sheets: Figure 3

Full Code Example

To read all the sheets: Here's the complete code to read an Excel file with multiple sheets:

from ironxl import License, WorkBook, WorkSheet

# Set your IronXL license key
License.LicenseKey = "Your License Key"

# Load the Excel workbook
workbook = WorkBook.Load('sample.xlsx')

# Read Multiple Sheets
for sheet in workbook.WorkSheets:
    print(f"Sheet Name: {sheet.Name}")
    for row in sheet.Rows:
        print([cell.Value for cell in row])  # Print each row values
from ironxl import License, WorkBook, WorkSheet

# Set your IronXL license key
License.LicenseKey = "Your License Key"

# Load the Excel workbook
workbook = WorkBook.Load('sample.xlsx')

# Read Multiple Sheets
for sheet in workbook.WorkSheets:
    print(f"Sheet Name: {sheet.Name}")
    for row in sheet.Rows:
        print([cell.Value for cell in row])  # Print each row values
PYTHON

Code Explanation

  • Importing Libraries: It imports WorkBook and WorkSheet classes from the IronXL library, which are used to work with Excel files and sheets, respectively.
  • Loading the Excel Workbook: The Load() method is used to open the Excel file sample.xlsx and load it into a workbook object.
  • Iterating through Multiple Sheets: The code loops through all sheets in the workbook using the WorkSheets property. For each sheet, it prints the sheet's name.
  • Reading Rows in Each Sheet: For each sheet, it iterates through the rows and prints the values of each cell in that row as a list. The Value property of each cell is used to retrieve the content.

Output

How to Read Excel File in Python With Multiple Sheets: Figure 4

IronXL License (Trial Available)

IronXL works on a valid license file attached to the code. Users can easily get a trial license from the license page.

To use the license, place the license somewhere at the beginning in your code as shown below before using IronXL functionalities.

from ironxl import License

License.LicenseKey = "Your License Key"
from ironxl import License

License.LicenseKey = "Your License Key"
PYTHON

Conclusion

IronXL for Python is a powerful and efficient tool for handling Excel files with multiple sheets. Whether you're reading data, formatting cells, or handling larger files, IronXL simplifies the process, providing a clean and intuitive API. By following the steps above, you can quickly load and manipulate Excel files with multiple sheets in Python. IronXL stands out as an excellent choice for developers and data scientists who need to work with Excel in a seamless and effective way.

For more information and examples, you can refer to the IronXL Documentation.

Questions Fréquemment Posées

Comment puis-je lire plusieurs feuilles Excel en Python ?

IronXL pour Python vous permet de lire plusieurs feuilles Excel en chargeant le classeur avec WorkBook.Load() et en itérant à travers la propriété WorkSheets pour accéder et manipuler chaque feuille.

Ai-je besoin de Microsoft Excel installé pour utiliser IronXL ?

Non, IronXL ne nécessite pas l'installation de Microsoft Excel, ce qui le rend idéal pour les environnements serveur et les applications qui doivent gérer des fichiers Excel de manière indépendante.

Quels formats de fichiers Excel IronXL peut-il gérer?

IronXL prend en charge plusieurs formats, y compris XLS, XLSX et CSV, offrant une flexibilité dans la gestion de divers types de fichiers Excel sans avoir besoin de logiciels externes.

Comment puis-je intégrer IronXL dans mon projet Python ?

Vous pouvez intégrer IronXL dans votre projet Python en installant la bibliothèque, en obtenant une clé de licence d'essai depuis la page de licence IronXL, et en l'incluant dans votre code avec License.LicenseKey = 'Votre Clé de Licence'.

Quels sont les avantages d'utiliser IronXL par rapport à openpyxl ou pandas ?

IronXL offre des fonctionnalités robustes telles que l'absence de dépendance à Microsoft Excel, la prise en charge de plusieurs formats de fichiers, la compatibilité multiplateforme, et une API intuitive, ce qui le rend idéal pour l'analyse de données, la création de rapports et l'automatisation.

IronXL peut-il être utilisé sur différents systèmes d'exploitation ?

Oui, IronXL est compatible multiplateforme, ce qui lui permet d'être utilisé sur Windows, macOS, Linux, Docker, Azure et AWS, offrant une flexibilité pour divers environnements de développement.

Comment puis-je accéder à une feuille spécifique dans un classeur Excel avec IronXL ?

Après avoir chargé le classeur avec WorkBook.Load(), vous pouvez accéder à une feuille spécifique par son nom ou son index via la propriété WorkSheets.

Quel est le processus de chargement d'un fichier Excel à l'aide de IronXL ?

Pour charger un fichier Excel dans IronXL, utilisez WorkBook.Load('filename.xlsx'), qui retourne un objet WorkBook représentant le fichier Excel entier, prêt pour manipulation.

Comment IronXL peut-il aider à automatiser les tâches liées à Excel ?

IronXL fournit une API propre et intuitive qui simplifie les tâches comme l'analyse de données, la génération de rapports et l'automatisation en offrant des fonctionnalités avancées telles que le formatage des cellules et des performances élevées même avec de gros fichiers.

Quelles sont les fonctionnalités avancées de IronXL ?

IronXL inclut des fonctionnalités avancées telles que le formatage des cellules, la prise en charge de différents formats Excel, les performances élevées avec de gros fichiers, et la possibilité d'écrire des données dans les fichiers Excel, améliorant son utilité pour des tâches complexes de données.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite