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);
Lorsqu'il s'agit de travailler avecDocuments Excel en C#les deux bibliothèques les plus populaires sont IronXL, une solution de l'offre groupée Iron Suite, et FastExcel v4. Ces deux bibliothèques offrent une gamme d'outils et de fonctionnalités qui peuvent aider les développeurs à manipuler et à gérer les classeurs Excel. Ces deux logiciels sont individuellement excellents, mais l'excellence n'est pas suffisante. Nous allons évaluer les caractéristiques de chacun d'entre eux, afin de déterminer quelle est la meilleure option pour vos besoins. Dans cet article, nous allons comparer IronXL et FastExcel v4, en soulignant les forces et les faiblesses de chaque bibliothèque, et en fournissant des exemples d'utilisation en C#.
FastExcel v4
FastExcel v4 est une famille de bibliothèques C# multithreadées qui fournissent des outils de gestion des classeurs Excel. La dernière version de FastExcel v4 introduit de nouvelles fonctionnalités telles que Tables Sheet Manager Pro, qui simplifie la gestion des noms définis, et FastExcel SpeedTools, qui aide à réduire l'encombrement du classeur.
Avec FastExcel v4, les développeurs ont la possibilité de choisir entre des méthodes de calcul automatiques et manuelles, en fonction de leurs besoins. La bibliothèque offre un large éventail d'outils pour manipuler les feuilles de calcul et les classeurs, y compris la prise en charge d'un nombre illimité de formules et de calculs.
L'un des principaux avantages de FastExcel v4 est sa rapidité. La bibliothèque est conçue pour être efficace, même lorsqu'il s'agit de classeurs volumineux ou complexes. Il comprend des calculs multithreads qui peuvent accélérer considérablement le processus de calcul, et il fournit des outils pour gérer l'utilisation de la mémoire et optimiser les performances.
FastExcel v4 : fonctionnalités
Lire et écrire des fichiers Excel au format XLSX
Lire des données à partir de fichiers Excel à l'aide de LINQ
Prise en charge de la validation des données et de la gestion des erreurs
API de streaming haute performance pour la lecture et l'écriture de fichiers Excel
Prise en charge du multithreading pour un traitement plus rapide des fichiers Excel volumineux
Compatible avec .NET Framework et .NET Core
Intégration avec des bibliothèques populaires telles que LINQ, Entity Framework et Apache Spark
IronXL
IronXL est unpuissante bibliothèque C# qui permet aux développeurs de manipuler et de créer des fichiers Excel par programmation. Il offre une syntaxe C# familière et des méthodes de lecture, d'écriture et de modification des fichiers Excel, sans aucune dépendance externe ni installation de logiciel supplémentaire.
Avec IronXL, les développeurs ont accès à un large éventail de fonctionnalités et d'outils qui simplifient le travail avec les fichiers Excel. Cela inclut la prise en charge de divers formats de fichiers Excel, la possibilité de manipuler des feuilles de calcul et des tableaux, ainsi que des outils de gestion des noms définis, des formats de nombres, etc. La bibliothèque prend également en charge les modes de calcul automatique et manuel, ainsi que les calculs Excel multithread pour optimiser les performances.
Grâce à IronXL, les développeurs peuvent créer sans effort de nouveaux classeurs Excel, ajouter des données à des classeurs existants et manipuler des formules et des calculs Excel à l'aide du code C#. La bibliothèque comprend également des outils de débogage robustes et des fonctionnalités telles que l'Explorateur de formules et le Gestionnaire de feuilles de tableaux, qui facilitent le dépannage et l'optimisation du code Excel.
L'ensemble des fonctionnalités d'IronXL
Charger, lire et modifier des données à partir de différents formats de fichiers tels que XLS, XLSX, CSV et TSV.
Exportation et enregistrement des données dans différents formats de fichiers, notamment XLS, XLSX, CSV, TSV et JSON.
Utiliser les objets System.Data, qui permettent aux utilisateurs de travailler avec les feuilles de calcul Excel WorkBook en tant qu'objets System.Data.DataSet et System.Data.DataTable.
Prise en charge des formules Excel, qui sont recalculées chaque fois qu'une feuille est éditée.
Permet aux utilisateurs de créer et de combiner des plages de manière intuitive grâce à la syntaxe "WorkSheet" facile à utiliser.
Fournir des fonctionnalités de tri et de filtrage des plages, des colonnes et des lignes.
Permettre aux utilisateurs de styliser les cellules selon leurs préférences, y compris les styles visuels, la police, la taille, le motif d'arrière-plan, la bordure, l'alignement et le format des nombres.
Manipulation de documents Excel à l'aide de FastExcel v4
Pour commencer à utiliser FastExcel v4, vous devez télécharger la dernière version depuis le site officiel. Vous pouvez utiliser la version d'essai pour évaluer la bibliothèque avant d'acheter la version complète sous licence. Une fois que vous avez installé FastExcel v4, vous pouvez commencer à utiliser ses outils pour vous aider à gérer les fichiers Excel.
Manipulation de fichiers Excel
FastExcel v4 fournit une série d'outils pour manipuler les fichiers Excel en C#. Vous pouvez utiliser FastExcel v4 pour ouvrir et enregistrer des classeurs Excel, manipuler des feuilles de calcul, gérer des noms définis, etc. Voici quelques exemples d'utilisation de FastExcel v4 pour manipuler des fichiers Excel :
Ouverture et enregistrement de classeurs Excel
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
// Do some work on the workbook here
workbook.Save();
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
// Do some work on the workbook here
workbook.Save();
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
' Do some work on the workbook here
workbook.Save()
End Using
$vbLabelText $csharpLabel
Manipulation des feuilles de travail
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
var worksheet = workbook.Worksheets ["Sheet1"];
// Do some work on the worksheet here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
var worksheet = workbook.Worksheets ["Sheet1"];
// Do some work on the worksheet here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
Dim worksheet = workbook.Worksheets ("Sheet1")
' Do some work on the worksheet here
End Using
$vbLabelText $csharpLabel
Gestion des noms définis
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
var definedNames = workbook.DefinedNames;
// Do some work on the defined names here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
var definedNames = workbook.DefinedNames;
// Do some work on the defined names here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
Dim definedNames = workbook.DefinedNames
' Do some work on the defined names here
End Using
$vbLabelText $csharpLabel
Optimisation des calculs
L'un des avantages les plus significatifs de FastExcel v4 est sa capacité à optimiser les calculs dans les classeurs Excel. Les calculs Excel peuvent devenir un goulot d'étranglement lorsque la taille et la complexité d'un classeur augmentent. FastExcel v4 fournit des outils pour vous aider à optimiser les calculs et à améliorer les performances.
Calcul automatique et manuel
Par défaut, les classeurs Excel utilisent le calcul automatique, ce qui signifie qu'Excel recalcule les formules chaque fois qu'une cellule est modifiée. Cette opération peut prendre beaucoup de temps, en particulier dans le cas de classeurs volumineux. FastExcel v4 vous permet de basculer entre le calcul automatique et le calcul manuel, ce qui peut améliorer considérablement les performances. Voici un exemple de passage au calcul manuel :
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
workbook.CalculationMode = CalculationMode.Manual;
// Do some work on the workbook here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
workbook.CalculationMode = CalculationMode.Manual;
// Do some work on the workbook here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
workbook.CalculationMode = CalculationMode.Manual
' Do some work on the workbook here
End Using
$vbLabelText $csharpLabel
Goulets d'étranglement dans le calcul des réseaux
Les calculs de tableaux peuvent également devenir un goulot d'étranglement dans les classeurs Excel. FastExcel v4 fournit des outils pour vous aider à optimiser les calculs de tableaux et à améliorer les performances. Voici un exemple d'optimisation des calculs de tableaux à l'aide de FastExcel v4 :
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
workbook.OpenCalculationMethods = OpenCalculationMethods.ArrayFormulas;
// Do some work on the workbook here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
workbook.OpenCalculationMethods = OpenCalculationMethods.ArrayFormulas;
// Do some work on the workbook here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
workbook.OpenCalculationMethods = OpenCalculationMethods.ArrayFormulas
' Do some work on the workbook here
End Using
$vbLabelText $csharpLabel
FastExcel Profiler
FastExcel Profiler est un outil précieux pour optimiser les calculs Excel. FastExcel Profiler fournit des informations détaillées sur les problèmes de calcul, la surcharge et d'autres problèmes qui peuvent affecter la performance de vos classeurs Excel. Voici un exemple d'utilisation de FastExcel Profiler pour optimiser les calculs :
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
using (var profiler = new FastExcelProfiler(workbook))
{
// Do some work on the workbook here
profiler.DisplayReport();
}
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
using (var profiler = new FastExcelProfiler(workbook))
{
// Do some work on the workbook here
profiler.DisplayReport();
}
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
Using profiler = New FastExcelProfiler(workbook)
' Do some work on the workbook here
profiler.DisplayReport()
End Using
End Using
$vbLabelText $csharpLabel
Tables Sheet Manager Pro
FastExcel TableSheet Manager Pro est un autre outil puissant dans la famille FastExcel v4. Il fournit des outils pour vous aider à gérer les tableaux dans vos classeurs Excel. Tables Sheet Manager Pro vous permet de gérer facilement un nombre illimité de tableaux dans une seule feuille de calcul, ce qui peut réduire considérablement l'encombrement et améliorer les performances. Voici un exemple d'utilisation de Tables Sheet Manager Pro :
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
using (var manager = new TableSheetManagerPro(workbook))
{
// Do some work on the tables here
}
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
using (var manager = new TableSheetManagerPro(workbook))
{
// Do some work on the tables here
}
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
Using manager = New TableSheetManagerPro(workbook)
' Do some work on the tables here
End Using
End Using
$vbLabelText $csharpLabel
Formats des nombres
FastExcel v4 fournit également des outils pour vous aider à gérer les formats de nombres dans vos classeurs Excel. Vous pouvez utiliser FastExcel v4 pour appliquer des formats de nombres aux cellules, colonnes et lignes de vos classeurs. Voici un exemple d'application d'un format de nombre à l'aide de FastExcel v4 :
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
var worksheet = workbook.Worksheets ["Sheet1"];
var column = worksheet.Columns ["A"];
column.Style.NumberFormat = "#,##0.00";
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
var worksheet = workbook.Worksheets ["Sheet1"];
var column = worksheet.Columns ["A"];
column.Style.NumberFormat = "#,##0.00";
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
Dim worksheet = workbook.Worksheets ("Sheet1")
Dim column = worksheet.Columns ("A")
column.Style.NumberFormat = "#,##0.00"
End Using
$vbLabelText $csharpLabel
Explorateur de formules
FastExcel v4 fournit un outil d'exploration des formules qui vous permet de visualiser les formules dans vos classeurs Excel. L'explorateur de formules peut vous aider à résoudre les erreurs de formule et à optimiser les calculs. Voici un exemple d'utilisation de l'explorateur de formules :
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
using (var explorer = new FormulaExplorer(workbook))
{
// Do some work on the formulas here
}
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
using (var explorer = new FormulaExplorer(workbook))
{
// Do some work on the formulas here
}
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
Using explorer = New FormulaExplorer(workbook)
' Do some work on the formulas here
End Using
End Using
$vbLabelText $csharpLabel
Manipulation de documents Excel à l'aide d'IronXL
Pourdémarrer avec IronXLvous devez installer le paquet IronXL. Vous pouvez le faire via le gestionnaire de paquets NuGet ou en téléchargeant le paquet sur le site web d'IronXL. Une fois le paquetage installé, vous pouvez commencer à utiliser IronXL dans votre projet C#.
Ouverture et sauvegarde des classeurs : Pour ouvrir un classeur Excel à l'aide d'IronXL, vous pouvez utiliser le code suivant :
Dim workbook As WorkBook = WorkBook.Load("C:\Test\MyWorkbook.xlsx")
$vbLabelText $csharpLabel
Cette opération permet d'ouvrir le classeur situé dans le chemin d'accès spécifié. Vous pouvez également créer un nouveau classeur en utilisant le code suivant :
Dim worksheet As WorkSheet = workbook.WorkSheets ("Sheet1")
$vbLabelText $csharpLabel
Cette opération permet de récupérer la feuille de calcul nommée "Sheet1" dans le classeur. Vous pouvez ensuite manipuler la feuille de calcul selon vos besoins.
Gestion des noms définis
IronXL fournit des outils pour vous aider à gérer les noms définis dans vos classeurs Excel. Vous pouvez utiliser le code suivant pour créer un nom défini :
Cette opération applique le format numérique "#,##0.00" à la cellule A1 de la feuille de calcul.
Optimisation des calculs
IronXL fournit des outils pour vous aider à optimiser les calculs dans vos classeurs Excel. Pour optimiser les calculs, vous pouvez utiliser le code suivant :
workbook.SetAutomaticCalculation(false);
workbook.SetAutomaticCalculation(false);
workbook.SetAutomaticCalculation(False)
$vbLabelText $csharpLabel
Cela désactivera le calcul automatique dans le classeur. Vous pouvez ensuite calculer manuellement le classeur à l'aide du code suivant :
workbook.Calculate();
workbook.Calculate();
workbook.Calculate()
$vbLabelText $csharpLabel
Cette opération permet de calculer toutes les formules du classeur.
Comparaison
FastExcel et IronXL sont tous deux de puissantes bibliothèques permettant de manipuler des fichiers Excel à l'aide du langage C#. Bien que les deux bibliothèques offrent des fonctionnalités similaires, il existe quelques différences essentielles qui les distinguent.
FastExcel est une bibliothèque qui vise à améliorer les performances des calculs Excel, en particulier lors de l'utilisation de grands ensembles de données. Il offre des fonctionnalités telles que le calcul automatique et manuel, l'optimisation des goulets d'étranglement dans le calcul des tableaux et des méthodes de calcul ouvertes. FastExcel fournit également des outils tels que FastExcel Profiler et FastExcel SpeedTools pour aider à gérer et optimiser les classeurs Excel.
D'autre part, IronXL est une bibliothèque qui privilégie la facilité d'utilisation et la flexibilité. Il fournit une large gamme d'outils pour aider les développeurs à manipuler les fichiers Excel dans le code C#. Ces outils permettent notamment de gérer des noms définis, de travailler avec un nombre illimité de feuilles de calcul et de gérer facilement les formats de chiffres. IronXL prend également en charge les calculs Excel multithread, ce qui en fait un excellent choix pour traiter de grands ensembles de données.
Bien que FastExcel et IronXL soient tous deux de puissantes bibliothèques permettant de travailler avec des fichiers Excel en C#, IronXL présente quelques avantages qui en font le choix préféré de nombreux développeurs. Tout d'abord, IronXL dispose d'une API plus intuitive, ce qui facilite son utilisation et son apprentissage. Deuxièmement, IronXL est plus abordable que FastExcel, ce qui en fait un meilleur choix pour les petits projets ou les équipes disposant d'un budget limité.
En outre, IronXL est une bibliothèque plus légère que FastExcel. Il n'a pas la lourdeur de FastExcel, qui peut ralentir les performances et rendre plus difficile la gestion de grands classeurs Excel.
Bien que FastExcel et IronXL soient tous deux des bibliothèques capables de travailler avec des fichiers Excel en C#, IronXL est un choix de premier ordre en raison de sa facilité d'utilisation, de son prix abordable et de sa légèreté.
Conclusion
En conclusion, en comparant FastExcel et IronXL, il est clair que les deux bibliothèques offrent une gamme d'outils et de fonctionnalités puissants pour manipuler les fichiers Excel à l'aide du code C#. Cependant, il existe des différences essentielles entre les deux bibliothèques qui font d'IronXL le choix préféré de nombreux développeurs.
D'un point de vue technique, IronXL offre une API plus intuitive et conviviale, ce qui facilite l'apprentissage et l'utilisation pour les développeurs de tous niveaux de compétence. IronXL propose également une bibliothèque légère qui n'est pas surchargée, ce qui peut ralentir les performances et rendre plus difficile la gestion de grands classeurs Excel. En revanche, FastExcel se concentre davantage sur l'amélioration des performances de calcul d'Excel, mais peut s'avérer plus complexe et plus difficile à utiliser qu'IronXL.
En outre, IronXL propose un modèle de licence plus abordable que FastExcel, ce qui en fait un meilleur choix pour les petits projets ou les équipes disposant d'un budget limité. Avec une version sous licence complète d'IronXL, les développeurs ont accès à toutes les fonctionnalités et à tous les outils sans frais ni restrictions supplémentaires.
Dans l'ensemble, IronXL est le choix préféré des développeurs qui privilégient la facilité d'utilisation, le prix abordable et la légèreté des performances. Grâce à ses puissants outils et fonctionnalités, notamment les calculs Excel multithread et la prise en charge d'un nombre illimité de feuilles de calcul, IronXL est un outil inestimable pour tout développeur travaillant avec des fichiers Excel dans du code C#.
Pour les personnes intéressées par l'achat d'IronXL, Iron Software proposeune offre spéciale où les clients peuvent acheter les cinq produits d'Iron Software pour le prix de deux. Il comprend IronXL, ainsi que d'autres bibliothèques puissantes pour travailler avec des fichiers PDF, l'OCR, et plus encore. Cette offre constitue une valeur exceptionnelle pour les développeurs qui ont besoin d'une gamme d'outils pour soutenir leurs projets.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT EPPlus Read Excel to Datatable C# (IronXL Tutorial)
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