Passer au contenu du pied de page
UTILISATION D'IRONXL

Comment ouvrir un fichier Excel en C#

This tutorial will use IronXL as a main tool to open and read Excel files in C# projects.

IronXL Excel Library

IronXL is a .NET library that prioritizes ease of use, accuracy, and speed for its users. It helps you open, read, create, and edit Excel files with lightning-fast performance and without any errors. It works without MS Office Interop, which makes it a powerful tool for developers.

IronXL is compatible with all .NET Frameworks along with Linux, MacOS, Docker, Azure, and AWS. It can be used to create Console, Web, and Desktop Applications such as Blazor and MAUI for modern Web Apps. It supports different workbook formats like XLS and XLSX files, XSLT and XLSM, CSV, and TSV.

Some Important IronXL Features

  • Open, read, and search data in different formats (XLS/XLSX file/CSV/TSV).
  • Export Excel Worksheets to XLS/XLSX/CSV/TSV/JSON.
  • Encrypting and decrypting XLSX/XLSM/XLTX files with passwords.
  • Work with Excel sheets as System.Data.DataSet and System.Data.DataTable objects.
  • Excel file formulas are recalculated automatically each time a sheet is edited.
  • Easy spreadsheet data editing with an intuitive cell-range-based syntax (e.g., WorkSheet["A1:B10"]).
  • Sort Cell Ranges, Columns, and Rows.
  • Styling Cells - Font, Font Size, Background color, Border, Alignment, and Numbering formats.

How to open an Excel file in C#?

Prerequisites

To use IronXL in C# applications, install the following components on your local computer:

  1. Visual Studio - It is the official IDE for developing C# .NET applications. You can download and install Visual Studio from the Microsoft website. You can also use Jetbrains ReSharper & Rider.
  2. IronXL - It is the Excel library that helps to work with Excel sheets at a given path in C#. It must be installed in your C# application before using it. You can download it from the NuGet website or from Manage NuGet packages in Visual Studio tools. You can also download the .NET Excel DLL file directly.

Adding Necessary Namespaces

Once Visual Studio and IronXL are installed, add the necessary IronXL namespaces by including the following line at the top of your C# file:

// Add reference to the IronXL library
using IronXL;
// Add reference to the IronXL library
using IronXL;
' Add reference to the IronXL library
Imports IronXL
$vbLabelText   $csharpLabel

Open an Existing Excel file in C#

Excel files, also known as workbooks, consist of multiple worksheets, each containing cell values. To open and read an Excel file, load it using the WorkBook class's Load method.

// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");
// Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");
' Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV, and TSV
Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
$vbLabelText   $csharpLabel

This initializes the workbook as a WorkBook instance. To open a specific WorkSheet, retrieve it from the WorkSheets collection:

// Access the first worksheet in the workbook
WorkSheet sheet = workbook.WorkSheets.First();
// Access the first worksheet in the workbook
WorkSheet sheet = workbook.WorkSheets.First();
' Access the first worksheet in the workbook
Dim sheet As WorkSheet = workbook.WorkSheets.First()
$vbLabelText   $csharpLabel

This accesses the first sheet in the Excel file, ready for reading and writing.

How to Open Excel File in C#, Figure 1: Excel File Excel File

Read Excel Files in C#

Once the Excel file is opened, it is ready for reading data. Reading data from Excel files in C# using IronXL is straightforward. You can read cell values by specifying the cell reference.

The following code retrieves the value of a cell:

// Select the cell using Excel notation and retrieve its integer value
int cellValue = sheet["C2"].IntValue;

// Display the value in the console
Console.WriteLine(cellValue);
// Select the cell using Excel notation and retrieve its integer value
int cellValue = sheet["C2"].IntValue;

// Display the value in the console
Console.WriteLine(cellValue);
' Select the cell using Excel notation and retrieve its integer value
Dim cellValue As Integer = sheet("C2").IntValue

' Display the value in the console
Console.WriteLine(cellValue)
$vbLabelText   $csharpLabel

The output is as follows:

How to Open Excel File in C#, Figure 2: Read Excel Read Excel

To read data from a range of cells, use a loop to iterate through the specified range:

// Iterate through a range of cells and display their address and text content
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Iterate through a range of cells and display their address and text content
foreach (var cell in sheet["A2:A6"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
' Iterate through a range of cells and display their address and text content
For Each cell In sheet("A2:A6")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
$vbLabelText   $csharpLabel

Each value in the cell range A2:A6 is accessed and printed to the console.

How to Open Excel File in C#, Figure 3: Read Range of Cells Read Range of Cells

For more detailed reading and writing examples, check the Excel reading tutorial in C#.

Create a New Workbook

IronXL also facilitates creating new workbooks for data saving and retrieving.

You can create a new Excel file with a single line of code:

// Create a new workbook with the XLSX format
WorkBook workBook = new WorkBook(ExcelFileFormat.XLSX);
// Create a new workbook with the XLSX format
WorkBook workBook = new WorkBook(ExcelFileFormat.XLSX);
' Create a new workbook with the XLSX format
Dim workBook As New WorkBook(ExcelFileFormat.XLSX)
$vbLabelText   $csharpLabel

Next, create a worksheet and add data to it.

Create a New Worksheet

// Create a worksheet named "GDPByCountry" in the workbook
WorkSheet workSheet = workBook.CreateWorkSheet("GDPByCountry");
// Create a worksheet named "GDPByCountry" in the workbook
WorkSheet workSheet = workBook.CreateWorkSheet("GDPByCountry");
' Create a worksheet named "GDPByCountry" in the workbook
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("GDPByCountry")
$vbLabelText   $csharpLabel

This code adds a worksheet named "GDPByCountry" to the workbook, allowing you to add cell values.

To set a value for a specific cell, use the code below:

// Set the value of cell A1 to "Example"
workSheet["A1"].Value = "Example";
// Set the value of cell A1 to "Example"
workSheet["A1"].Value = "Example";
' Set the value of cell A1 to "Example"
workSheet("A1").Value = "Example"
$vbLabelText   $csharpLabel

The final output is:

How to Open Excel File in C#, Figure 4: Add Value to Cell Add Value to Cell

Summary

This article demonstrates how to open and read Excel files, such as XLS and XLSX, in C# using IronXL. IronXL doesn't require Microsoft Excel to be installed on the system for Excel-related tasks.

IronXL provides a comprehensive solution for Excel-related tasks programmatically, including formula calculation, string sorting, trimming, finding and replacing, merging and unmerging, saving files, and more. You can also set cell data formats.

IronXL is available for a free 30-day trial and can be licensed for commercial use. IronXL's Lite package starts from $799.

Questions Fréquemment Posées

Comment puis-je ouvrir des fichiers Excel en C# sans utiliser Interop ?

Vous pouvez ouvrir des fichiers Excel en C# sans utiliser Interop en utilisant la bibliothèque IronXL. Utilisez la méthode WorkBook.Load pour charger un fichier Excel dans une instance de WorkBook, ce qui vous permet d'accéder et de manipuler les données du fichier.

Quels formats de fichiers sont compatibles avec cette bibliothèque C# pour Excel ?

IronXL prend en charge une variété de formats de fichiers Excel, y compris XLS, XLSX, CSV et TSV. Cela permet aux développeurs d'ouvrir, lire et écrire ces formats de manière flexible dans leurs applications C#.

Puis-je modifier des fichiers Excel en C# en utilisant cette bibliothèque ?

Oui, vous pouvez modifier des fichiers Excel en utilisant IronXL. Après avoir chargé un classeur, vous pouvez modifier les données, ajouter de nouvelles feuilles de calcul, puis enregistrer les modifications dans le fichier ou l'exporter dans divers formats.

Comment installer cette bibliothèque pour l'utiliser dans mon projet C# ?

Pour installer IronXL dans votre projet C#, vous pouvez utiliser le gestionnaire de packages NuGet dans Visual Studio pour ajouter la bibliothèque. Alternativement, vous pouvez télécharger le DLL Excel .NET et le référencer dans votre projet.

Est-il possible de chiffrer des fichiers Excel en utilisant cette bibliothèque ?

Oui, IronXL vous permet de chiffrer et de déchiffrer des fichiers Excel. Vous pouvez sécuriser vos documents Excel avec des mots de passe pour protéger les données sensibles lors des opérations sur les fichiers.

Est-ce que cette bibliothèque prend en charge le recalcul automatique des formules dans les feuilles Excel ?

IronXL prend en charge le recalcul automatique des formules, garantissant que toute modification des données met automatiquement à jour les formules, comme dans Excel.

Comment puis-je lire les valeurs de cellules spécifiques dans une feuille de calcul Excel en utilisant cette bibliothèque ?

Pour lire des valeurs de cellules spécifiques en utilisant IronXL, vous pouvez référencer la cellule en utilisant la notation Excel. Par exemple, sheet['A1'].StringValue récupérera la valeur sous forme de chaîne de la cellule A1.

Cette bibliothèque peut-elle être utilisée sur différents systèmes d'exploitation ?

Oui, IronXL est compatible avec plusieurs systèmes d'exploitation, y compris Windows, Linux et macOS. Il prend également en charge le déploiement dans des environnements Docker, Azure et AWS.

Quels sont les avantages d'utiliser cette bibliothèque par rapport à MS Office Interop ?

IronXL offre plusieurs avantages par rapport à MS Office Interop, tels que ne pas nécessiter l'installation d'Excel sur le système, de meilleures performances dans les environnements serveurs, et la facilité d'utilisation avec les applications .NET modernes.

Y a-t-il une version d'essai gratuite disponible pour cette bibliothèque C# pour Excel ?

Oui, IronXL offre un essai gratuit de 30 jours, vous permettant de tester ses fonctionnalités et capacités avant de décider d'une licence commerciale pour vos projets.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite