UTILISATION D'IRONXL

Datatable to Excel in C# (Tutoriel d'exemple de code)

Mise à jour janvier 7, 2024
Partager:

Il peut être difficile de modifier par programme une feuille de calcul Excel, pour deux raisons principales. Tout d'abord, lorsqu'ils utilisent des feuilles de calcul, les utilisateurs doivent maintenir une interface et une structure de document cohérentes, ce qui n'est pas toujours simple. Deuxièmement, il n'est pas toujours évident de savoir quel code fonctionnera dans des situations spécifiques, en particulier lorsqu'il s'agit de calculs sophistiqués. Il existe de nombreuses raisons pour lesquelles la création programmatique d'un fichier Excel est difficile. Les programmeurs doivent d'abord transformer les données du document Excel dans un format lisible, puis analyser les données et les restituer, ce qui est encore plus difficile. J'ai trouvé une solution à ce problème. Je vais vous apprendre à créer un fichier Excel et à exporter par programmation une base de données vers une feuille Excel sans aucun problème en utilisant la bibliothèque IronXL for .NET Excel. Commençons :

Caractéristiques d'IronXL

  • IronXL fonctionne sur un grand nombre de systèmes d'exploitation, y compris Windows,LinuxetmacOS.
  • Presque tous les Frameworks .NET sont pris en charge par IronXL, y compris les applications Console, Windows Forms etApplication Web.
  • IronXL rend la lecture des fichiers Excel simple et facile.
  • Nous pouvons charger, éditer,exporter des donnéesexporter des ensembles de donnéeslire les formats de fichiers Excel tels que les fichiers XLSX, XLS, CSV, TSV, XLST, XLSM, et plus encore avec IronXL.
  • IronXL nous permet de sauvegarder etexporter des fichiers avec une variété d'extensions, y compris XLS, CSV, TSV, JSON, XLSX, et d'autres.
  • Formules Excel peuvent être créées par IronXL.
  • Texte, nombres, formules, dates, devises, pourcentages, etcFormats de données des cellules Excel sont prises en charge par IronXL.
  • Il fournit également de nombreusesoptions de tri tels que les plages, les colonnes et les lignes, entre autres.
  • La stylisation des cellules dans IronXL comprendpoliceil s'agit notamment de la taille, du motif d'arrière-plan, de la bordure et de l'alignement.
  • Nous pouvons lire et exporter des données d'un fichier Excel à l'aide d'IronXL.
  • IronXL ne nécessite pas l'installation d'Excel ou d'Interop sur votre serveur. L'API IronXL est plus rapide et plus facile à utiliser que Microsoft Office, Interop et Excel.

1 Création d'un nouveau projet dans Visual Studio

Pour utiliser la bibliothèque IronXL, nous devons créer un projet .NET dans Visual Studio. Vous pouvez utiliser n'importe quelle version de Visual Studio, mais la dernière version est recommandée. Vous pouvez créer une application comme Windows Forms ou différents modèles de projet, en fonction de vos besoins. Pour ce tutoriel, j'utiliserai l'application Console, pour des raisons de simplicité.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 1 : Créer une nouvelle interface utilisateur de projet dans Visual Studio

Créer un nouveau projet UI dans Visual Studio

Saisissez ensuite le nom du projet et son emplacement.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 2 : Étape de configuration lors de la création d'un nouveau projet

Étape de configuration lors de la création d'un nouveau projet

Sélectionnez ensuite le cadre ci-dessous. Dans ce projet, nous allons utiliser .NET Core 6.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 3 : Interface utilisateur de sélection du Framework NET

UI de sélection du Framework .NET

Une fois que l'application a créé la solution, elle ouvre le fichier program.cs dans lequel vous pouvez saisir le code et construire/exécuter l'application.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 4 : Fichier program.cs vide dans le nouveau projet

Fichier program.cs vide dans le nouveau projet

Ensuite, nous pouvons ajouter la bibliothèque pour tester le code.

2 Installer la bibliothèque IronXL

La bibliothèque IronXL peut être téléchargée et installée de quatre façons.

Il s'agit de

  • Utilisation de Visual Studio
  • Utilisation de la ligne de commande de Visual Studio.
  • Téléchargement direct depuis le site NuGet.
  • Téléchargement direct depuis le site web d'IronXL.

2.1 Utilisation de Visual Studio

Nous pouvons installer la bibliothèque IronXL à l'aide du gestionnaire de paquets NuGet. Vous devez d'abord ouvrir le gestionnaire de paquets NuGet et rechercher IronXL dans l'onglet Parcourir. Sélectionnez IronXL dans les résultats de la recherche et installez-le. Après cela, notre projet sera prêt à être utilisé dans la bibliothèque IronXL.

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

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 5 : Naviguer vers le gestionnaire de paquets NuGet dans Visual Studio

Naviguer vers le gestionnaire de paquets NuGet dans Visual Studio

IronXL dans les résultats de recherche :

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 6 : Recherche de la bibliothèque IronXL

Recherche de la bibliothèque IronXL

2.2 Utilisation de la ligne de commande de Visual Studio

De nombreuses personnes aiment utiliser une console pour effectuer des opérations. Nous pouvons donc également l'installer à l'aide de la console. Suivez les étapes suivantes pour installer IronXL par la ligne de commande.

  • Dans Visual Studio, allez dans Tools-> NuGet Package Manager -> Package Manager Console.
  • 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 prêt à être utilisé.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 7 : Installer le paquet IronXL via la console

Installer le paquet IronXL via la console

2.3 Téléchargement direct depuis le site NuGet

La troisième méthode consiste à télécharger le paquet NuGet directement à partir du site web.

  • Naviguez jusqu'à la pagePage officielle Nuget du paquetage IronXL.
  • Sélectionnez l'option de téléchargement dans le menu de droite.
  • Double-cliquez sur le paquet téléchargé. Il sera installé automatiquement.
  • Ensuite, rechargez la solution et commencez à l'utiliser dans le projet.

2.4 Téléchargement direct à partir du site web d'IronXL

Cliquez sur le lien pourtélécharger le dernier paquet directement depuis le site web. Une fois téléchargé, suivez les étapes ci-dessous pour ajouter le paquet au projet.

  • Cliquez avec le bouton droit de la souris sur le projet dans la fenêtre de la solution.
  • Ensuite, sélectionnez les options de référence et recherchez l'emplacement de la référence téléchargée.
  • Ensuite, cliquez sur ok pour ajouter la référence.

3 Exportation de données vers un fichier Excel à l'aide d'IronXL

IronXL nous permet d'exporter facilement des tableaux de données vers des fichiers Excel avec un nombre limité d'étapes.

Tout d'abord, nous devons inclure l'espace de noms d'IronXL comme dans la capture d'écran du code ci-dessous. Une fois qu'il est ajouté, nous pouvons utiliser les classes et méthodes IronXL dans notre code.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 8 : Inclure l'espace de noms d'IronXL avant d'utiliser la bibliothèque

Inclure le namespace d'IronXL avant d'utiliser la bibliothèque

IronXL nous permet de créer des fichiers Excel et de les convertir en objets de classeur. Après les avoir convertis en objets, nous pouvons effectuer différents types d'opérations. Dans l'exemple de code ci-dessous, nous allons convertir une table de données en une feuille de calcul Excel, puis nous pourrons créer un fichier Excel.

public static void ExportToExcel(string filePath)
{
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Animal", typeof(string));
    table.Rows.Add("Lion");
    table.Rows.Add("Tiger");
    table.Rows.Add("Cat");
    table.Rows.Add("Goat");
    table.Rows.Add("Panther");
    table.Rows.Add("Fox");
    table.Rows.Add("Cheetah");
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    WorkSheet ws = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        ws ["A" + (rowCount)].Value = row [0].ToString();
        rowCount++;
    }
    wb.SaveAsCsv(filePath, ";");
}
public static void ExportToExcel(string filePath)
{
    DataTable table = new DataTable();
    table.Columns.Add("DataSet_Animal", typeof(string));
    table.Rows.Add("Lion");
    table.Rows.Add("Tiger");
    table.Rows.Add("Cat");
    table.Rows.Add("Goat");
    table.Rows.Add("Panther");
    table.Rows.Add("Fox");
    table.Rows.Add("Cheetah");
    WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
    WorkSheet ws = wb.DefaultWorkSheet;
    int rowCount = 1;
    foreach (DataRow row in table.Rows)
    {
        ws ["A" + (rowCount)].Value = row [0].ToString();
        rowCount++;
    }
    wb.SaveAsCsv(filePath, ";");
}
Public Shared Sub ExportToExcel(ByVal filePath As String)
	Dim table As New DataTable()
	table.Columns.Add("DataSet_Animal", GetType(String))
	table.Rows.Add("Lion")
	table.Rows.Add("Tiger")
	table.Rows.Add("Cat")
	table.Rows.Add("Goat")
	table.Rows.Add("Panther")
	table.Rows.Add("Fox")
	table.Rows.Add("Cheetah")
	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 table.Rows
		ws ("A" & (rowCount)).Value = row (0).ToString()
		rowCount += 1
	Next row
	wb.SaveAsCsv(filePath, ";")
End Sub
VB   C#

Dans le code ci-dessus, nous exportons le tableau de données vers un fichier Excel. Tout d'abord, nous créons un Tableau de données, puis nous créons des en-têtes de colonnes. Après avoir créé les colonnes, nous les ajoutons une par une. Une fois la colonne ajoutée, nous créons le fichierWorkBook (livre de travail) objet. En utilisant l'objet, nous pouvons ajouter les données à la feuille Excel, puis les enregistrer à l'endroit voulu. Nous créons leFeuille de travail qui permet de créer une feuille de travail, et nous pouvons ensuite l'ajouter à l'objet WorkBook.

Nous utilisons la boucle foreach pour lire les valeurs de la table de données une par une, puis nous ajoutons la valeur à la feuille de calcul. Une fois toutes les valeurs ajoutées à la feuille de calcul, nous les enregistrons dans un fichier CSV à l'aide de la méthode appelée SaveAsCSV - nous devons passer le délimiteur et le nom du fichier avec l'emplacement comme paramètre. Un délimiteur est un paramètre facultatif que nous pouvons ignorer s'il n'est pas nécessaire.

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 9 : Le code complété dans Visual Studio

Le code complété dans Visual Studio

Voici la capture d'écran complète du code que nous utilisons sur le .NET Core 6.

Resultat:

Comment exporter des données volumineuses d'un tableau de données vers Excel en C#, Figure 10 : Le résultat à l'ouverture du fichier dans Microsoft Excel

Le résultat de l'ouverture du fichier dans Microsoft Excel

Voici le résultat de l'exemple de code exécuté. Dans la capture d'écran, toutes les données disponibles dans le tableau de données ont été ajoutées une à une à la feuille Excel nouvellement créée.

4 Conclusion

IronXL est l'une des bibliothèques Excel les plus utilisées. Il ne dépend d'aucune autre bibliothèque tierce. Il est indépendant et ne nécessite pas l'installation de MS Excel. Il fonctionne sur plusieurs plateformes. Le prix de lancement d'IronXL est de $749. De plus, il offre la possibilité de payer un an pour l'assistance et les mises à jour du produit. IronXL offre une couverture de redistribution libre de droits moyennant un coût supplémentaire. Pour en savoir plus sur les détails des prix, visitez notre site webpage d'autorisation.

< PRÉCÉDENT
C# Ouvrir un fichier Excel par programme (Tutoriel d'exemple de code)
SUIVANT >
Comment déplacer des lignes dans Excel