UTILISATION D'IRONXL

Comment importer un fichier Excel en C#

Mise à jour février 20, 2024
Partager:

Microsoft Excel est un tableur polyvalent qui facilite l'organisation, la présentation et l'analyse des données. Cependant, travailler avec Excel par programmation en C# peut s'avérer difficile. La bibliothèque logicielle IronXL peut être utilisée pour importer et lire des fichiers Excel en C#.

IronXL - Bibliothèque Excel

IronXL est une bibliothèque Excel .NET qui privilégie la facilité d'utilisation, la précision et la rapidité pour ses utilisateurs. Il vous aide à importer et à lire des documents Excel, ainsi qu'à créer et à modifier un fichier Excel de manière efficace et rapide. Il fonctionne sans MS Office Interop. Cela signifie que si Excel n'est pas installé, il fournit toutes les fonctionnalités pour lire les fichiers Excel. Cela fait d'IronXL un outil puissant permettant aux développeurs d'importer et de lire des fichiers Excel en C#.

IronXL est disponible sur toutes les plateformes telles que Windows, Linux, MacOS, Docker, Azure et AWS. Il est compatible avec tous les Framework .NET. IronXL est une bibliothèque polyvalente qui peut être intégrée dans des applications ASP.NET de type console, bureau ou Web. Il prend en charge différents formats de classeurs tels que les fichiers XLS et XLSX, XSLT et XLSM, CSV et TSV.

Quelques caractéristiques importantes

  • Ouvrir, lire des fichiers Excel et rechercher des données à partir de différents formats de feuilles de calcul comme les fichiers XLS/CSV/TSV/XLSX.
  • Exportation de feuilles de calcul Excel vers XLS/XLSX/CSV/TSV/JSON.
  • Cryptage et décryptage Fichiers XLSM/XLTX/XLSX avec mots de passe.
  • Importer la feuille Excel en tant qu'objets System.Data.DataSet et System.Data.DataTable.
  • Fichier Excel formules sont recalculées à chaque fois qu'une feuille est éditée.
  • Paramétrage intuitif des plages de cellules avec une WorkSheet ["A1:B10] syntaxe simple.
  • Trier les plages de cellules, les colonnes et les lignes.
  • Cellules de style - Police, taille de la police, couleur d'arrière-plan, Bordure, alignement et Formats de numérotation.

Comment importer un classeur Excel dans C#; ?

Conditions préalables

Pour utiliser IronXL en C# afin de lire des fichiers Excel, assurez-vous que les composants suivants sont installés sur l'ordinateur :

  1. Visual Studio - C'est l'IDE officiel pour le développement d'applications C# .NET. Vous pouvez télécharger et installer Visual Studio à partir du site Site web de Microsoft.

  2. IronXL - Il s'agit d'une bibliothèque qui permet de travailler avec des feuilles Excel à un chemin donné en C#. Il doit être installé dans un programme C# avant d'être utilisé. IronXL peut être téléchargé à partir de l'adresse suivante Site web de NuGet ou Gérer les paquets NuGet dans les outils Visual Studio. Vous pouvez également télécharger le .NET Excel DLL directement.

Ajout des espaces de noms nécessaires

Une fois Visual Studio et IronXL installés, faites référence à l'assemblage IronXL pour utiliser IronXL dans le code source. Ajoutez la ligne de code suivante en haut du fichier du nouveau projet où les fonctions IronXL seront utilisées :

using IronXL;  
using IronXL;  
Imports IronXL
VB   C#

Ouvrir un fichier Excel existant dans C# ;

Les feuilles de calcul Microsoft Excel sont également appelées "classeur Excel". Chaque classeur contient plusieurs feuilles de calcul et une seule feuille de calcul contient des cellules tabulaires avec sa valeur. Pour ouvrir et lire un fichier Excelil doit être chargé à l'aide de la fonction WorkBook (livre de travail) et Load présente dans la bibliothèque IronXL. Le code est le suivant :

//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")
VB   C#

Cette opération ouvre le fichier Excel dans la variable de référence de l'instance de classeur. Comme il peut contenir plusieurs feuilles de calcul, il peut être utilisé pour ouvrir une feuille de calcul spécifique ou toutes les feuilles à la fois. Le code suivant ouvre la première feuille de calcul dans la variable d'instance sheet :

WorkSheet sheet = workbook.WorkSheets.First();  
WorkSheet sheet = workbook.WorkSheets.First();  
Dim sheet As WorkSheet = workbook.WorkSheets.First()
VB   C#

La première feuille du fichier Excel s'ouvre et les données Excel peuvent désormais être lues et écrites sur cette feuille.

Fichier Excel ouvert

Comment importer un fichier Excel en C#, Figure 1 : Le fichier Excel

**Le fichier Excel

Lire les données du fichier Excel importé

Une fois le fichier Excel importé, il est prêt à lire les données. Lire les données d'un fichier Excel en C# à l'aide d'IronXL est très simple et facile. Vous pouvez lire les valeurs des cellules Excel en mentionnant simplement le numéro de référence de la cellule.

Le code ci-dessous permet de récupérer la valeur d'une cellule dont le numéro de référence est "C2" :

//Select cells easily in Excel-notation and return the value
int cellValue = sheet ["C2"].IntValue;

//Display the value
Console.WriteLine(cellValue);
//Select cells easily in Excel-notation and return the value
int cellValue = sheet ["C2"].IntValue;

//Display the value
Console.WriteLine(cellValue);
'Select cells easily in Excel-notation and return the value
Dim cellValue As Integer = sheet ("C2").IntValue

'Display the value
Console.WriteLine(cellValue)
VB   C#

Le résultat est le suivant :

Comment importer un fichier Excel en C#, Figure 2 : Lire Excel

**Lire Excel

Lisons maintenant les données d'une plage de cellules dans le fichier Excel ouvert. Le code est le suivant :

// Read from Range of cells elegantly.
foreach (var cell in sheet ["A2:A6"]) {
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}  
// Read from Range of cells elegantly.
foreach (var cell in sheet ["A2:A6"]) {
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}  
' Read from Range of cells elegantly.
For Each cell In sheet ("A2:A6")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
VB   C#

Le code est très simple, propre et clair. La plage de cellules peut être référencée avec une syntaxe simple, comme indiqué dans une boucle foreach : sheet ["A2:A6] et chaque cellule peut être itérée à l'aide d'une boucle for pour obtenir sa valeur. Ici, vous verrez les noms de la colonne A de la ligne 2 à la ligne 6 sur la sortie de la console :

Comment importer un fichier Excel en C#, Figure 3 : Lire une plage de cellules

Lire une plage de cellules

Pour plus de détails sur la lecture et l'écriture des valeurs des cellules, consultez ce tutoriel lire un fichier Excel dans un exemple C#.

Importer toutes les données du fichier Excel

IronXL peut être utilisé pour lire des feuilles Excel en une seule fois en utilisant les index Lignes et Colonnes. Les exemples de code IronXL suivants permettent d'obtenir l'ensemble des données d'un fichier Excel dans le même format sur la sortie de la console :

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

//Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++) {
    //Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++) {
        //Get the values 
        string val = sheet.Rows [i].Columns [j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}  
WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

//Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++) {
    //Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++) {
        //Get the values 
        string val = sheet.Rows [i].Columns [j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}  
Imports Microsoft.VisualBasic

Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()

'Traverse all rows of Excel WorkSheet
For i As Integer = 0 To sheet.Rows.Count() - 1
	'Traverse all columns of specific Row
	For j As Integer = 0 To sheet.Columns.Count() - 1
		'Get the values 
		Dim val As String = sheet.Rows (i).Columns (j).Value.ToString()
		Console.Write("{0}" & vbTab, val)
	Next j
	Console.WriteLine()
Next i
VB   C#

Fichier de sortie

Comment importer un fichier Excel en C#, Figure 4 : La console de sortie pour la lecture d'un fichier Excel

La console de sortie pour la lecture d'un fichier Excel

Ajouter le texte alt de l'image.

Résumé

Cet article a démontré comment importer et lire un fichier Excel en C# sans que Microsoft Excel soit installé. Ils ont ensuite étudié plusieurs façons de lire les données d'une feuille de calcul Excel. IronXL permet également de créer des fichiers Excel en C# sans installer Excel.

IronXL fournit une solution tout-en-un pour toutes les tâches liées aux documents Microsoft Excel à mettre en œuvre de manière programmatique. Vous pouvez calculer des formules, trier des chaînes ou des nombres, couper et ajouter des données, rechercher et remplacer, fusionner et défusionner, enregistrer des fichiers, etc. Vous pouvez modifier les valeurs des cellules et définir les formats de données des cellules tout en validant les données de la feuille de calcul. Il prend également en charge les fichiers CSV et vous aide à travailler comme des données Excel.

IronXL est disponible pour un essai gratuit et peut être sous licence pour une utilisation commerciale avec son paquetage Lite à partir de $749 seulement.

< PRÉCÉDENT
Comment exporter une base de données vers un fichier CSV en C# ?
SUIVANT >
Comment convertir un ensemble de données en CSV en C#