UTILISATION D'IRONXL

Comment exporter une table de données vers Excel dans ASP.NET Core ?

Regan Pun
Regan Pun
avril 18, 2023
Mise à jour mars 24, 2024
Partager:

Cet article explorera les différentes manières d'exporter un DataTable vers un fichier Excel et les avantages de cette démarche.

1. IronXL

IronXL est une bibliothèque .NET puissante qui offre aux développeurs la capacité de lire, d'écrire et de manipuler des fichiers Excel en utilisant ASP.NET. Il offre une gamme de fonctionnalités qui simplifient le processus de travail avec des fichiers Excel, telles que l'extraction de données, la mise en forme et la validation.

IronXL peut traiter les formats de fichiers XLS et XLSX, ce qui en fait un outil polyvalent pour travailler avec des fichiers Excel. Il prend également en charge une gamme d'autres formats de fichiers, tels que CSV et TSV, permettant aux utilisateurs de travailler avec différentes sources de données. Cet article explorera les différentes fonctionnalités d'IronXL et la manière dont il peut aider les développeurs à rationaliser le processus de travail avec les fichiers Excel.

2. Conditions préalables

Prérequis pour exporter des données de DataTable vers Excel en utilisant la bibliothèque IronXL :

  • Pour créer un projet ASP.NET, Visual Studio doit être installé sur votre système. Si vous n'avez pas encore Visual Studio, vous pouvez le télécharger sur le site web de Microsoft.
  • Avant de créer un projet ASP.NET, vous devez vous assurer que ASP.NET est installé sur votre système. Vous pouvez le vérifier en allant dans le Panneau de configuration et en recherchant l'option "Activer ou désactiver les fonctionnalités de Windows". Assurez-vous que l'option "ASP.NET" est activée.
  • Pour pouvoir exporter des données de DataTable vers un fichier Excel en utilisant la bibliothèque IronXL, vous devez l'avoir installée. Vous pouvez l'installer en téléchargeant le paquet NuGet IronXL à partir du gestionnaire de paquets NuGet dans Visual Studio.

3. Création d'un nouveau projet ASP.NET Core

Pour utiliser la bibliothèque IronXL avec Excel, vous devez créer un projet .NET dans Visual Studio. Vous pouvez utiliser n'importe quelle version de Visual Studio, mais il est recommandé d'utiliser la dernière version. En fonction de vos besoins, vous pouvez choisir parmi différents modèles de projet, tels que Windows Forms. Pour faciliter les choses, l'application Console sera utilisée pour ce tutoriel.

Comment exporter un Datatable vers Excel dans ASP.NET, Figure 1 : Créer un nouveau projet dans Visual Studio

Créer un nouveau projet dans Visual Studio

Après avoir sélectionné le type de projet, donnez un nom au projet et indiquez son emplacement. Choisissez le Framework souhaité, par exemple .NET Core 6, pour le projet.

Comment exporter une Datatable vers Excel dans ASP.NET, Figure 2 : Configurer le nouveau projet

Configurer le nouveau projet

Une fois la solution créée, le fichier program.cs s'ouvre, ce qui vous permet de saisir du code et de construire/exécuter l'application.

Comment exporter un DataTable vers Excel dans ASP.NET, Figure 3 : Sélection de .NET Framework

Sélection du .NET Framework

Enfin, vous pouvez incorporer la bibliothèque pour tester le code.

4. Installer IronXL

La bibliothèque IronXL peut être téléchargée et installée de différentes manières.

Il s'agit de

  • Utiliser les paquets NuGet de Visual Studio
  • Utilisation de la ligne de commande de Visual Studio.

4.1 Utilisation de Visual Studio

Pour installer la bibliothèque IronXL, l'approche la plus simple consiste à utiliser le gestionnaire de paquets NuGet dans Visual Studio. Il suffit d'ouvrir le gestionnaire de paquets NuGet et de rechercher IronXL dans l'onglet Parcourir. Une fois que vous avez localisé IronXL dans les résultats de recherche, sélectionnez-le et procédez à l'installation. Une fois l'installation terminée, vous pouvez commencer à utiliser la bibliothèque IronXL dans votre projet.

La capture d'écran ci-dessous montre comment ouvrir le gestionnaire de paquets NuGet dans Visual Studio.

Comment exporter une table de données vers Excel dans ASP.NET, Figure 4 : Naviguer vers le gestionnaire de packages NuGet

Accédez au gestionnaire de packages NuGet

IronXL dans les résultats de recherche :

Comment exporter un Datatable vers Excel dans ASP.NET, Figure 5 : Recherchez et installez le package IronXL dans l'interface utilisateur du gestionnaire de packages NuGet

Recherchez et installez le package IronXL dans l'interface utilisateur de NuGet Package Manager

4.2 Utilisation de la ligne de commande de Visual Studio

De nombreuses personnes préfèrent installer des paquets à l'aide de l'interface de ligne de commande. Pour installer IronXL à l'aide de la ligne de commande, procédez comme suit :

  • Dans Visual Studio, allez à Outils > Gestionnaire de package NuGet > Console du gestionnaire de packages.
  • Saisissez la ligne suivante dans l'onglet Console du gestionnaire de paquets :
Install-Package IronXL.Excel

Le paquet sera alors téléchargé/installé dans le projet en cours et sera prêt à être utilisé.

Comment exporter un Datatable vers Excel dans ASP.NET, Figure 6 : Progression de l'installation dans la console du gestionnaire de packages

Progression de l'installation dans la console du gestionnaire de packages

5. Création d'un fichier Excel à l'aide de DataTable DT à l'aide d'IronXL

L'exportation de données à partir de tableaux de données vers le format de fichier Excel est très répandue. En utilisant IronXL, vous pouvez facilement exporter les données DataTable vers un document Excel. L'exemple de code ci-joint ci-dessous convertira un DataTable en une feuille de calcul Excel enregistrée au format de fichier XLSX.

5.1. Conversion d'un tableau de données en fichier Excel

Tout d'abord, vous devez inclure l'espace de noms d'IronXL et d'autres dépendances. Vous pouvez ensuite commencer à écrire le code suivant, comme indiqué ci-dessous.

using IronXL;
using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++;
}
wb.SaveAs("datatable.xlsx");  
using IronXL;
using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++;
}
wb.SaveAs("datatable.xlsx");  
Imports IronXL
Imports System.Data

Private dt As New DataTable()
dt.Columns.Add("DataSet", GetType(String))
dt.Rows.Add("Pen")
dt.Rows.Add("Paper")
dt.Rows.Add("Book")
dt.Rows.Add("Cat")
dt.Rows.Add("Panther")
dt.Rows.Add("Cell")
dt.Rows.Add("Bag")
dt.Rows.Add("Bed")
dt.Rows.Add("Fan")
dt.Rows.Add("Smoke")

Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1

For Each row As DataRow In dt.Rows
	ws("A" & (rowCount)).Value = row(0).ToString()
	rowCount += 1
Next row
wb.SaveAs("datatable.xlsx")
$vbLabelText   $csharpLabel

Sortie

Voici le résultat du code source ci-dessus.

Comment exporter un DataTable vers Excel dans ASP.NET, Figure 7 : Le fichier Excel de sortie

Le fichier Excel de sortie

5.2. DataTable vers les formats de fichiers Excel pris en charge

Avec IronXL, vous pouvez également convertir un DataTable en différents formats de fichiers supportés par Excel comme les fichiers CSV. Nous utiliserons l'exemple ci-dessous, mais cette fois-ci, nous l'enregistrerons en tant que fichier CSV. C'est tout ce que vous avez à faire pour enregistrer le classeur dans un format de fichier différent.

using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++; 
}
wb.SaveAsCsv("datatable.csv");  
using System.Data;

DataTable dt = new DataTable();
dt.Columns.Add("DataSet", typeof(string));
dt.Rows.Add("Pen");
dt.Rows.Add("Paper");
dt.Rows.Add("Book");
dt.Rows.Add("Cat");
dt.Rows.Add("Panther");
dt.Rows.Add("Cell");
dt.Rows.Add("Bag");
dt.Rows.Add("Bed");
dt.Rows.Add("Fan");
dt.Rows.Add("Smoke");

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;

foreach (DataRow row in dt.Rows) {
    ws["A" + (rowCount)].Value = row[0].ToString();
    rowCount++; 
}
wb.SaveAsCsv("datatable.csv");  
Imports System.Data

Private dt As New DataTable()
dt.Columns.Add("DataSet", GetType(String))
dt.Rows.Add("Pen")
dt.Rows.Add("Paper")
dt.Rows.Add("Book")
dt.Rows.Add("Cat")
dt.Rows.Add("Panther")
dt.Rows.Add("Cell")
dt.Rows.Add("Bag")
dt.Rows.Add("Bed")
dt.Rows.Add("Fan")
dt.Rows.Add("Smoke")

Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1

For Each row As DataRow In dt.Rows
	ws("A" & (rowCount)).Value = row(0).ToString()
	rowCount += 1
Next row
wb.SaveAsCsv("datatable.csv")
$vbLabelText   $csharpLabel

Comment exporter un tableau de données vers Excel dans ASP.NET, Figure 8 : Le fichier CVS de sortie

Le fichier CSV de sortie

6. Conclusion

L'exportation d'un DataTable vers Excel est une étape cruciale dans l'analyse et la gestion des données. La feuille Excel est largement utilisée pour la visualisation et la présentation de données, et la bibliothèque IronXL offre une série de fonctionnalités pour simplifier le processus de travail avec les fichiers Excel dans ASP.NET. Cet article a couvert les étapes pour créer un nouveau projet ASP.NET, installer IronXL et l'utiliser pour exporter des données d'un DataTable vers un fichier Excel. De plus, il a démontré comment enregistrer le classeur dans différents formats de fichiers, tels que CSV. En utilisant IronXL, les développeurs peuvent rationaliser le processus de travail avec les fichiers Excel et créer des présentations visuellement attrayantes de leurs données.

Pour en savoir plus sur IronXL et l'exportation de DataTable vers différents formats Excel, consultez le didacticiel suivant.

IronXL est gratuit à installer et à utiliser pour des fins de développement non commercial. Une version d'essai gratuite est disponible pour tester en production. Consultez les plans tarifaires pour plus de détails sur les prix et les licences.

Les utilisateurs peuvent également bénéficier de Iron Suite, une suite de cinq bibliothèques professionnelles comprenant IronXL, IronPDF, et plus.

Regan Pun
Ingénieur logiciel
Regan est diplômé de l'université de Reading, où il a obtenu une licence en ingénierie électronique. Avant de rejoindre Iron Software, il s'était concentré sur une seule tâche. Ce qu'il apprécie le plus chez Iron Software, c'est la diversité des tâches qu'il peut accomplir, qu'il s'agisse d'apporter une valeur ajoutée aux ventes, à l'assistance technique, au développement de produits ou à la commercialisation. Il aime comprendre comment les développeurs utilisent la bibliothèque d'Iron Software et utiliser ces connaissances pour améliorer continuellement la documentation et développer les produits.
< PRÉCÉDENT
Comment exporter un fichier vers Excel dans .NET 6
SUIVANT >
Lire des données Excel et les insérer dans une base de données avec C#