How to Read Excel Files in Python with IronXL
This guide provides Python developers with step-by-step instructions on utilizing the IronXL library to reading and editing Microsoft Excel documents.
IronXL is a comprehensive Excel file processing library that supports multiple programming languages, including .NET and Python programming languages. This tutorial focuses specifically on using IronXL in Python scripts to read and edit Microsoft Excel documents.
For a separate tutorial on how to read and edit Microsoft Excel documents in .NET applications, please refer to the following here.
Reading and creating Excel files in Python is easy using the IronXL for Python software library.
Overview
How to Read Excel File in Python
- Download the Python Library to read Excel files
- Load and read an Excel file (workbook)
- Create an Excel workbook in CSV or XLSX
- Edit cell values in a range of cells
- Validate spreadsheet data
- Export data using Entity Framework
Tutorial
Step 1: Add IronXL as a Dependency in Your Python Project
To integrate the IronXL library into your Python project, you must install it as a dependency using the widely used Python package management tool, pip. Open the terminal and execute the following command:
pip install IronXL
This will install the specified version of IronXL in your project, making it accessible for import.
Please note
2. Load an Excel Workbook
The WorkBook class represents an Excel sheet. To open an Excel File, we use WorkBook.Load method, specifying the path of the Excel file.
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-1.pypythonEach WorkBook can have multiple WorkSheet objects. Each one represents a single Excel worksheet in the Excel document. Use the WorkBook.GetWorkSheet method to retrieve a reference to a specific Excel worksheet.
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-2.pypythonCreating new Excel Documents
To create a new Excel document, construct a new WorkBook object with a valid file type.
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-3.pypythonNote: Use ExcelFileFormat.XLS to support legacy versions of Microsoft Excel (95 and earlier).
Add a Worksheet to an Excel Document
As explained previously, an IronXL for Python WorkBook contains a collection of one or more WorkSheets.
To create a new WorkSheet call WorkBook.CreateWorkSheet with the name of the worksheet.
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-4.pypython3. Access Cell Values
Read and Edit a Single Cell
Access to the values of individual spreadsheet cells is carried out by retrieving the desired cell from its WorkSheet as shown below:
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-5.pypythonIronXL for Python's Cell class represents an invidual cell in an Excel spreadsheet. It contains properties and methods that enable users to access and modify the cell's value directly.
Each WorkSheet object manages an index of Cell objects corresponding to every cell value in an Excel worksheet. In the source code above, we reference the desired cell by its row and column index (cell B1 in this case) using standard array indexing syntax.
With a reference to Cell object, we can read and write data to and from a spreadsheet cell:
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-6.pypythonRead and Write a Range of Cell Values
The Range class represents a two-dimensional collection of Cell objects. This collection refers to a literal range of Excel cells. Obtain ranges by using the string indexer on a WorkSheet object.
The argument text is either the coordinate of a cell (e.g. "A1", as shown previously) or a span of cells from left to right top to bottom (e.g. "B2:E5"). It is also possible to call GetRange on a WorkSheet.
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-7.pypythonAdd Formula to a Spreadsheet
Set formula of Cells with the Formula property.
The code below iterates through each state and puts a percentage total in column C.
:path=/static-assets/excel-python/content-code-examples/tutorials/how-to-read-excel-file-csharp-8.pypythonSummary
IronXL.Excel is a stand alone Python library for reading a wide variety of spreadsheet formats. It does not require Microsoft Excel to be installed, and is not dependant on Interop.




