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);
Travailler avec des fichiers Excel sans Microsoft Office en C#
Publié janvier 14, 2024
Partager:
Introduction à IronXL
IronXL la bibliothèque sert d'alternative aux services traditionnels d'information et de documentationInteropérabilité avec Excel en C#, offrant une approche plus rationnelle et plus efficace de la manipulation des fichiers Excel.
Il s'agit d'une API Excel utile pour les développeurs qui gèrent des données Microsoft Excel dans des applications .NET, fonctionnant indépendamment de Microsoft Office. Elle offre un moyen simple de gérer les fichiers Excel dans différents formats tels que XLSX, XLS et CSV.
Pourquoi choisir IronXL ?
L'absence d'installation de MS Office sur le serveur fait d'IronXL une solution optimale dans divers environnements de serveurs.
Il s'agit donc d'une solution de choix pour les environnements de serveurs où l'installation de Microsoft Office n'est pas possible en raison de contraintes liées aux licences ou aux performances du serveur.
Principales caractéristiques d'IronXL
Les principales caractéristiques d'IronXL sont les suivantes :
Lire et écrire des fichiers Excel : IronXL peut créer et manipuler des fichiers Excel. Il prend en charge les formats de fichiers XLS classiques et XLSX modernes, ce qui garantit la compatibilité avec les différentes versions d'Excel.
Exportation de données : IronXL peutdonnées d'exportation vers et depuis des fichiers Excel vers d'autres formats, tels que les fichiers XML, CSV et autres formats.
Support pour .NET Core et Framework : IronXL fonctionne de manière transparente avec .NET Core et .NET Framework, ce qui en fait un choix polyvalent pour divers environnements de développement.
Facilité d'utilisation : Avec IronXL, les développeurs peuvent effectuer des opérations Excel complexes avec un minimum de lignes de code, ce qui améliore la productivité et l'efficacité.
Installation et configuration
Pour commencer à utiliser IronXL, vous devez installer le paquet NuGet. Voici comment procéder :
Via NuGet Package Manager : Recherchez IronXL dans le gestionnaire de paquets NuGet et installez-le.
En utilisant la console du gestionnaire de paquets : Exécutez la commande Install-Package IronXL.Excel dans la console du gestionnaire de paquets de Visual Studio.
Travailler avec IronXL
IronXL permet aux développeurs C# d'interagir efficacement avec les fichiers Excel. Cette section se penche sur les différentes opérations que vous pouvez effectuer avec IronXL, en fournissant des conseils détaillés et des exemples de code.
Création d'un nouveau fichier Excel
La création d'un nouveau fichier Excel est une tâche courante dans la manipulation des données et l'établissement de rapports. Avec IronXL, vous pouvez créer sans effort un fichier Excel avec quelques lignes de code, ajouter des feuilles de calcul et les remplir de données.
// Initialize a new Workbook
var workbook = new WorkBook();
// Add a new Worksheet named "Sales Data"
var worksheet = workbook.CreateWorkSheet("Sales Data");
// Populate the Worksheet with data
worksheet ["A1"].Value = "Month";
worksheet ["B1"].Value = "Sales";
worksheet ["A2"].Value = "January";
worksheet ["B2"].Value = 5000;
worksheet ["A3"].Value = "February";
worksheet ["B3"].Value = 6000;
// Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx");
// Initialize a new Workbook
var workbook = new WorkBook();
// Add a new Worksheet named "Sales Data"
var worksheet = workbook.CreateWorkSheet("Sales Data");
// Populate the Worksheet with data
worksheet ["A1"].Value = "Month";
worksheet ["B1"].Value = "Sales";
worksheet ["A2"].Value = "January";
worksheet ["B2"].Value = 5000;
worksheet ["A3"].Value = "February";
worksheet ["B3"].Value = 6000;
// Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx");
' Initialize a new Workbook
Dim workbook As New WorkBook()
' Add a new Worksheet named "Sales Data"
Dim worksheet = workbook.CreateWorkSheet("Sales Data")
' Populate the Worksheet with data
worksheet ("A1").Value = "Month"
worksheet ("B1").Value = "Sales"
worksheet ("A2").Value = "January"
worksheet ("B2").Value = 5000
worksheet ("A3").Value = "February"
worksheet ("B3").Value = 6000
' Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx")
$vbLabelText $csharpLabel
Voici la sortie du code :
Ce code crée un classeur, ajoute une feuille de calcul et l'alimente avec des données de vente avant de l'enregistrer en tant que fichier Excel.
IronXL prend en charge la notation Excel standard, ce qui permet aux développeurs de faire référence à des cellules telles que "A1" pour lire et manipuler des données.
Lecture de fichiers Excel
La lecture et l'extraction d'informations à partir de fichiers Excel sont essentielles pour les applications de traitement des données. IronXL vous permet d'ouvrir des fichiers Excel existants et delire leur contenu sans interopérabilité avec Excel.
Voici un exemple de code :
// Load an existing Excel file
var workbook = WorkBook.Load("FinancialData.xlsx");
// Access a specific worksheet by name
var worksheet = workbook.GetWorkSheet("Quarterly Report");
// Read values from specific cells
string quarter = worksheet ["A2"].StringValue;
double revenue = worksheet ["B2"].DoubleValue;
double expenses = worksheet ["C2"].DoubleValue;
// You can also iterate over rows and columns if needed
foreach (var row in worksheet.Rows)
{
foreach (var cell in row)
{
Console.WriteLine(cell.Value);
}
}
// Load an existing Excel file
var workbook = WorkBook.Load("FinancialData.xlsx");
// Access a specific worksheet by name
var worksheet = workbook.GetWorkSheet("Quarterly Report");
// Read values from specific cells
string quarter = worksheet ["A2"].StringValue;
double revenue = worksheet ["B2"].DoubleValue;
double expenses = worksheet ["C2"].DoubleValue;
// You can also iterate over rows and columns if needed
foreach (var row in worksheet.Rows)
{
foreach (var cell in row)
{
Console.WriteLine(cell.Value);
}
}
' Load an existing Excel file
Dim workbook = WorkBook.Load("FinancialData.xlsx")
' Access a specific worksheet by name
Dim worksheet = workbook.GetWorkSheet("Quarterly Report")
' Read values from specific cells
Dim quarter As String = worksheet ("A2").StringValue
Dim revenue As Double = worksheet ("B2").DoubleValue
Dim expenses As Double = worksheet ("C2").DoubleValue
' You can also iterate over rows and columns if needed
For Each row In worksheet.Rows
For Each cell In row
Console.WriteLine(cell.Value)
Next cell
Next row
$vbLabelText $csharpLabel
Ce code montre comment charger un fichier Excel, accéder à une feuille de calcul spécifique et lire des valeurs dans les cellules, y compris l'itération sur les lignes et les colonnes.
Ecriture de données dans des fichiers Excel
La modification des fichiers Excel est une exigence fréquente. IronXL vous permet d'écrire et de mettre à jour des données dans des fichiers Excel en toute simplicité.
L'exemple suivant illustre l'ajout et la mise à jour de données dans un fichier Excel :
// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeData.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Adding new data to cells
worksheet ["A4"].Value = "John Doe";
worksheet ["B4"].Value = "Sales";
worksheet ["C4"].Value = 45000;
// Updating existing data
worksheet ["C2"].Value = 50000; // Update salary of an existing employee
// Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx");
// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeData.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Adding new data to cells
worksheet ["A4"].Value = "John Doe";
worksheet ["B4"].Value = "Sales";
worksheet ["C4"].Value = 45000;
// Updating existing data
worksheet ["C2"].Value = 50000; // Update salary of an existing employee
// Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx");
' Load an existing Excel file
Dim workbook = WorkBook.Load("EmployeeData.xlsx")
Dim worksheet = workbook.DefaultWorkSheet
' Adding new data to cells
worksheet ("A4").Value = "John Doe"
worksheet ("B4").Value = "Sales"
worksheet ("C4").Value = 45000
' Updating existing data
worksheet ("C2").Value = 50000 ' Update salary of an existing employee
' Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx")
$vbLabelText $csharpLabel
Dans cet exemple, de nouvelles données sont ajoutées à un fichier Excel et les données existantes sont mises à jour, ce qui montre la flexibilité d'IronXL dans la manipulation des données.
Voici le fichier de sortie :
Exportation de données Excel
L'exportation de données de fichiers Excel vers d'autres formats est souvent nécessaire pour l'analyse des données et l'établissement de rapports. IronXL simplifie ce processus.
Voici comment exporter des données d'un fichier Excel vers un format CSV :
// Load the Excel file
var workbook = WorkBook.Load("ProjectData.xlsx");
// Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv");
// You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json");
// Load the Excel file
var workbook = WorkBook.Load("ProjectData.xlsx");
// Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv");
// You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json");
' Load the Excel file
Dim workbook = WorkBook.Load("ProjectData.xlsx")
' Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv")
' You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json")
$vbLabelText $csharpLabel
Cet extrait de code démontre la conversion de fichiers Excel aux formats CSV et JSON, mettant en évidence la polyvalence d'IronXL dans le traitement de différents formats de fichiers.
Caractéristiques avancées d'IronXL
IronXL ne se limite pas aux opérations de base d'Excel ; il est doté de fonctionnalités avancées qui répondent aux besoins de manipulation et de formatage de données complexes. Examinons plus en détail certaines de ces possibilités.
Travailler avec des tableaux de données
La conversion entre les feuilles Excel et les tableaux de données .NET est une fonction qui améliore la flexibilité du traitement des données dans IronXL. Cette fonctionnalité est particulièrement utile pour les scénarios impliquant des opérations de données en masse ou lors de l'interface avec des bases de données.
// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeRecords.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Convert the Worksheet to a DataTable
DataTable dataTable = worksheet.ToDataTable(true);
// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeRecords.xlsx");
var worksheet = workbook.DefaultWorkSheet;
// Convert the Worksheet to a DataTable
DataTable dataTable = worksheet.ToDataTable(true);
' Load an existing Excel file
Dim workbook = WorkBook.Load("EmployeeRecords.xlsx")
Dim worksheet = workbook.DefaultWorkSheet
' Convert the Worksheet to a DataTable
Dim dataTable As DataTable = worksheet.ToDataTable(True)
$vbLabelText $csharpLabel
Optimisation des performances pour les gros fichiers Excel
Le traitement efficace des fichiers Excel volumineux est une caractéristique essentielle d'IronXL, qui convient donc aux applications d'entreprise traitant de grandes quantités de données.
IronXL est conçu pour minimiser l'utilisation de la mémoire et optimiser les performances lors du traitement de fichiers Excel volumineux.
Il y parvient grâce à des algorithmes efficaces de traitement des données et en permettant une lecture sélective des feuilles de calcul et des cellules, réduisant ainsi la charge sur les ressources du système.
Manipulation des formats de fichiers Excel
IronXL prend en charge divers formats de fichiers Excel, ce qui garantit la compatibilité avec les différentes versions d'Excel et d'autres logiciels de feuilles de calcul.
// Creating a workbook
var workbook = new WorkBook();
// You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx"); // XLSX format
workbook.SaveAs("ExcelDocument.xls"); // XLS format
workbook.SaveAsCsv("ExcelDocument.csv"); // CSV format
// Creating a workbook
var workbook = new WorkBook();
// You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx"); // XLSX format
workbook.SaveAs("ExcelDocument.xls"); // XLS format
workbook.SaveAsCsv("ExcelDocument.csv"); // CSV format
' Creating a workbook
Dim workbook As New WorkBook()
' You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx") ' XLSX format
workbook.SaveAs("ExcelDocument.xls") ' XLS format
workbook.SaveAsCsv("ExcelDocument.csv") ' CSV format
$vbLabelText $csharpLabel
Cet exemple montre comment IronXL peut créer et enregistrer des documents aux formats XLSX, XLS et CSV, offrant ainsi une grande souplesse dans la manière dont les données sont stockées et partagées.
Conclusion
IronXL est une puissante bibliothèque C# permettant de travailler avec des fichiers Excel sans avoir recours à Microsoft Office. Sa capacité à lire, écrire et exporter des fichiers Excel, combinée à sa facilité d'utilisation et à sa prise en charge à la fois de .NET Core et de .NET Framework, en fait un excellent choix pour les développeurs qui traitent des données Excel dans leurs applications.
Qu'il s'agisse de créer de nouveaux documents Excel, de traiter des fichiers existants ou d'exporter des données vers différents formats, IronXL offre une solution robuste et efficace.
Pour une documentation plus détaillée, des exemples de code et une assistance, visitez le site officiel d'IronXL ou consultez leur dépôt GitHub. Avec IronXL, la gestion des fichiers Excel en C# devient un processus rationalisé et sans tracas.
IronXL offre uneessai gratuit pour que les utilisateurs puissent explorer ses caractéristiques et ses capacités avant de faire un achat. Cette période d'essai permet aux développeurs de tester la bibliothèque dans leur environnement et de s'assurer qu'elle répond à leurs besoins spécifiques en matière de manipulation de fichiers Excel dans les applications .NET.
Après le procès,licences pour IronXL commencent à $749, offrant un accès complet à toutes ses caractéristiques et fonctionnalités avancées.
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 Automatisation d'Excel en C# (Tutoriel du développeur)
SUIVANT > Comment convertir Excel en tableau de données en C# sans oledb
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. (Aucune obligation de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre gratuit Démonstration en direct
Fiable par plus de 2 millions d'ingénieurs dans le monde entier