using IronXL;
using System;
using System.Linq;
// Supported for XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select a cell and return the converted value
int cellValue = workSheet["A2"].IntValue;
// Read from ranges of cells elegantly.
foreach (var cell in workSheet["A2:A10"])
{
Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Calculate aggregate values such as Min, Max and Sum
decimal sum = workSheet["A2:A10"].Sum();
// Linq compatible
decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
Datatable to Excel in C# (Tutoriel d'exemple de code)
Regan Pun
juin 26, 2022
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 :
Comment exporter un tableau de données vers Excel en C#
Le texte, les nombres, les formules, les dates, les devises, les pourcentages et d'autres formats de données de cellules Excel sont pris en charge par IronXL.
Il propose également de nombreuses options de tri telles que la plage, les colonnes et les lignes, entre autres.
La mise en forme des cellules dans IronXL inclut la police, la taille, le motif de fond, la bordure et l'alignement, entre autres.
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é.
Créer une nouvelle interface projet dans Visual Studio
Saisissez ensuite le nom du projet et son emplacement.
Comment exporter de grandes données d'un DataTable 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.
Sélection de l'interface utilisateur .Net Framework
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.
Fichier program.cs vide sur 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.
Accédez à Gestionnaire de packages NuGet dans Visual Studio
IronXL dans les résultats de recherche :
Rechercher 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 à Outils-> Gestionnaire de packages 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 prêt à être utilisé.
Installer le package 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.
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 pour télécharger le dernier package directement depuis le site web. Une fois téléchargé, suivez les étapes ci-dessous pour ajouter le package 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.
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 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
$vbLabelText $csharpLabel
Dans le code ci-dessus, nous exportons le tableau de données vers un fichier Excel. Tout d'abord, nous créons un DataTable, puis nous créons les en-têtes de colonne. Après avoir créé les colonnes, nous les ajoutons une par une. Une fois que nous avons ajouté la colonne, nous créons ensuite l'objet WorkBook. En utilisant l'objet, nous pouvons ajouter les données à la feuille Excel, puis les enregistrer à l'endroit voulu. Nous créons l'objet WorkSheet qui permet de créer une feuille de calcul, et ensuite nous pouvons 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.
Le code complété dans Visual Studio
Voici la capture d'écran complète du code que nous utilisons sur le .NET Core 6.
Résultat :
Le résultat lors 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 départ pour IronXL commence à $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 sans redevance moyennant un coût supplémentaire. Pour en savoir plus sur les détails des prix, visitez notre page de licences.
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 C# Ouvrir un fichier Excel par programme (Tutoriel d'exemple de code)
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier