Passer au contenu du pied de page
COMPARER à D'AUTRES COMPOSANTS
Une comparaison d'IronXL vs Microsoft Office Interop Excel

Une comparaison entre IronXL et Microsoft Office Interop Excel

Les outils MS Office tels que Word, Excel, PowerPoint, etc. sont très populaires et largement utilisés dans tous les types d'entreprises. La création de fichiers de rapport au format Excel est une fonctionnalité dont de nombreux utilisateurs ont besoin dans leurs applications logicielles, et il existe désormais un moyen définitif d'inclure cette fonctionnalité dans les applications logicielles grâce aux différentes bibliothèques disponibles.

Dans cet article, nous allons examiner et comparer comment travailler avec des fichiers Microsoft Excel par programmation en C# en utilisant les deux bibliothèques les plus populaires : IronXL et Microsoft Office Excel Interop.

IronXL et Microsoft Excel Interop offrent tous deux des méthodes permettant de créer, de modifier et de lire des documents Excel dans les frameworks .NET. The next question is to decide which C# Excel library is best suited to your project. Cet article vous aidera à choisir la meilleure option pour vos applications.

Commençons par examiner ce que les deux bibliothèques ont à offrir, puis passons à la comparaison proprement dite.

La bibliothèque IronXL

IronXL est une bibliothèque .NET qui facilite la lecture et la modification des documents Microsoft Excel en C#. IronXL.Excel est une bibliothèque logicielle .NET autonome permettant de lire un large éventail de formats de feuilles de calcul. Il ne nécessite pas l'installation de Microsoft Excel et ne dépend pas d'Interop.

IronXL est une API C# intuitive qui vous permet de lire, de modifier et de créer des fichiers de tableur Excel en .NET avec des performances ultra-rapides. IronXL prend entièrement en charge .NET Core, .NET Framework, Xamarin, les applications mobiles, Linux, macOS et Azure.

IronXL est une bibliothèque de tableur Excel de premier plan pour C#, compatible avec .NET Core et .NET Framework.

Documentation et assistance

Ensemble de fonctionnalités d'IronXL

  • Charger, lire et modifier des données à partir de fichiers XLS/XLSX/CSV/TSV
  • Enregistrement et exportation — aux formats XLS/XLSX/CSV/TSV/JSON
  • Objets System.Data — Utilisez les feuilles de calcul Excel sous forme d'objets System.Data.DataSet et System.Data.DataTable.
  • Formules — fonctionne avec les formules Excel. Les formules sont recalculées à chaque modification d'une feuille de calcul.
  • Plages — Syntaxe Worksheet facile à utiliser ["A1:B10"]. Combinez et créez des gammes intuitivement.
  • Tri — Trier les plages, les colonnes et les lignes.
  • Style — Styles visuels des cellules : police, taille, motif d'arrière-plan, bordure, alignement et formats numériques.

Objets d'interopérabilité Microsoft Office Excel

L'espace de noms Microsoft.Office.Interop.Excel fournit des méthodes permettant d'interagir avec l'application Microsoft Excel en C# et Visual Basic. Grâce à cet espace de noms, nous pouvons créer de nouveaux classeurs Excel, des feuilles de calcul Excel, afficher des données dans des feuilles existantes, modifier le contenu de feuilles Excel existantes, et bien plus encore.

Les classes et interfaces de Microsoft.Office.Interop.Excel assurent l'interopérabilité entre le modèle objet COM des fichiers Microsoft Excel et les applications gérées qui automatisent les fichiers xls ou xlsx.

Le langage de programmation C# inclut des fonctionnalités qui facilitent l'utilisation des objets de l'API d'interopérabilité Microsoft Office. Les nouvelles fonctionnalités incluent des arguments nommés et optionnels, un nouveau type appelé dynamique, et la possibilité de passer des arguments aux paramètres de référence dans les méthodes COM comme s'il s'agissait de paramètres de valeur. Cela en fait un meilleur choix pour travailler avec les objets COM et d'interopérabilité.

Remarque : les objets d'interopérabilité Microsoft Excel nécessitent que Microsoft Excel soit installé sur l'ordinateur.

La suite de l'article se déroule comme suit :

  1. Créer une application console
  2. Installation de la bibliothèque IronXL C#
  3. Installation de Microsoft Office Interop Excel
  4. Créez un nouveau classeur et une nouvelle feuille Excel.
  5. Lire les fichiers Excel
  6. Utilisation des plages de valeurs dans les fichiers Excel
  7. Utilisation des formules Excel
  8. Licence
  9. Résumé et conclusion

1. Créer une application console

Suivez les étapes ci-dessous pour créer une application console :

  • Démarrer l'IDE Visual Studio 2022.
  • Cliquez sur " Créer un nouveau projet " .
  • Sur la page " Créer un nouveau projet " , sélectionnez C# dans la liste déroulante Langage, Windows dans la liste Plateformes et Console dans la liste " Types de projets " .
  • Sélectionnez Application console (.NET Framework) parmi les modèles de projet affichés.
Créer un projet - Application console
  • Cliquez sur Suivant .
  • Dans l'écran Informations supplémentaires , spécifiez la version du Framework que vous souhaitez utiliser. Nous utiliserons .NET Framework 4.8 dans cet exemple.
Créer un projet - .NET Framework
  • Cliquez sur Créer pour terminer le processus.

Le projet est maintenant créé et nous sommes presque prêts à tester les bibliothèques. Cependant, nous devons encore les installer et les intégrer à notre projet. Commençons par installer IronXL.

2. Installation de la bibliothèque IronXL C

Vous pouvez télécharger et installer la bibliothèque IronXL en utilisant les méthodes suivantes :

  1. Utilisation de Visual Studio avec les packages NuGet.
  2. Téléchargez directement le package NuGet.
  3. Installation manuelle avec la DLL.

Examinons-les de plus près.

2.1. Utilisation de Visual Studio avec les packages NuGet

Visual Studio fournit le gestionnaire de paquets NuGet pour installer des paquets NuGet dans vos projets. Vous pouvez y accéder via le Menu Projet, ou en cliquant avec le bouton droit sur votre projet dans l'Explorateur de solutions.

Sélectionnez Gérer les packages NuGet
  • Maintenant, depuis l'onglet Parcourir -> recherchez IronXL.Excel -> Installer
Rechercher IronXL
  • Et c'est terminé.
Recherche d'interopérabilité Microsoft Excel

3.2. Utilisation de la console du gestionnaire de packages NuGet

Une autre façon de télécharger et d'installer la bibliothèque C# Microsoft.Office.Interop.Excel consiste à suivre les étapes suivantes pour installer le package NuGet via l'invite de commandes développeur.

  1. Ouvrez l' invite de commandes développeur , généralement située dans le dossier Visual Studio.
  2. Saisissez la commande suivante :

    PM> Install-Package Microsoft.Office.Interop.Excel
    PM> Install-Package Microsoft.Office.Interop.Excel
    SHELL
  3. Appuyez sur Entrée.
  4. Cela téléchargera et installera le package.
  5. Rechargez votre projet Visual Studio et commencez à l'utiliser.

3.3. Ajouter les directives using nécessaires

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le fichier Program.cs, puis cliquez sur Afficher le code.
  2. Ajoutez la directive using suivante en haut du fichier de code :

    using Excel = Microsoft.Office.Interop.Excel;
    using Excel = Microsoft.Office.Interop.Excel;
    Imports Excel = Microsoft.Office.Interop.Excel
    $vbLabelText   $csharpLabel

4. Créez un nouveau classeur et une nouvelle feuille Excel.

Un classeur est un fichier Excel contenant plusieurs feuilles de calcul avec des lignes et des colonnes. Les deux bibliothèques offrent la possibilité de créer un nouveau classeur Excel et de nouvelles feuilles de calcul. Examinons le code étape par étape.

4.1. Un nouveau classeur et une nouvelle feuille Excel utilisant IronXL

Créer un nouveau classeur Excel avec IronXL n'a jamais été aussi simple ! Une seule ligne de code ! Oui, vraiment. Ajoutez le code suivant à votre fonction statique void Main dans le fichier Program.cs :

// Create a new workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Create a new workbook in XLSX format
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
' Create a new workbook in XLSX format
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
$vbLabelText   $csharpLabel

IronXL permet de créer des fichiers aux formats XLS (ancienne version de fichier Excel) et XLSX (version de fichier actuelle et plus récente).

Et il est encore plus facile de créer une feuille de calcul par défaut :

// Create a new worksheet
var worksheet = workbook.CreateWorkSheet("IronXL Features");
// Create a new worksheet
var worksheet = workbook.CreateWorkSheet("IronXL Features");
' Create a new worksheet
Dim worksheet = workbook.CreateWorkSheet("IronXL Features")
$vbLabelText   $csharpLabel

Vous pouvez désormais utiliser la variable de feuille de calcul pour définir les valeurs des cellules et faire presque tout ce qu'un fichier Excel peut faire.

4.2. Un nouveau classeur et une nouvelle feuille Excel utilisant Microsoft.Office.Interop.Excel

Pour créer un fichier Excel à l'aide de Microsoft.Office.Interop, Microsoft Excel doit être installé. Il faut donc vérifier si Microsoft Excel est installé sur la machine hôte ; sinon, il renverra simplement une exception qu'il faudra gérer. Les exemples de code suivants vous permettent de vérifier si une application Excel est installée et de créer des classeurs et des feuilles de calcul Excel :

Vérifiez si Microsoft Excel est installé :

// Start Excel and get Application object.
Excel.Application xlApp = new Excel.Application();  

// Check if Excel is installed  
if (xlApp == null)  
{  
    Console.WriteLine("Excel is not installed in the system...");
    return;  
}
// Start Excel and get Application object.
Excel.Application xlApp = new Excel.Application();  

// Check if Excel is installed  
if (xlApp == null)  
{  
    Console.WriteLine("Excel is not installed in the system...");
    return;  
}
' Start Excel and get Application object.
Dim xlApp As New Excel.Application()

' Check if Excel is installed  
If xlApp Is Nothing Then
	Console.WriteLine("Excel is not installed in the system...")
	Return
End If
$vbLabelText   $csharpLabel

Créer un classeur et une feuille de calcul :

// Create Workbook and Worksheet
object misValue = System.Reflection.Missing.Value;  
Excel.Workbook xlWorkBook = xlApp.Workbooks.Add(misValue);  
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
// Create Workbook and Worksheet
object misValue = System.Reflection.Missing.Value;  
Excel.Workbook xlWorkBook = xlApp.Workbooks.Add(misValue);  
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
' Create Workbook and Worksheet
Dim misValue As Object = System.Reflection.Missing.Value
Dim xlWorkBook As Excel.Workbook = xlApp.Workbooks.Add(misValue)
Dim xlWorkSheet As Excel.Worksheet = CType(xlWorkBook.Worksheets.Item(1), Excel.Worksheet)
$vbLabelText   $csharpLabel

Pour l'instant, en examinant les deux codes, l'avantage va à IronXL par rapport à Office Interop Excel. IronXL utilise une seule ligne de code pour fonctionner avec les fichiers Excel, sans complications ni dépendances supplémentaires.

5. Lire les fichiers Excel

Les deux bibliothèques peuvent ouvrir et lire les documents Excel existants. Examinons l'exemple de code.

5.1. Lire des fichiers Excel avec IronXL

La classe IronXL WorkBook représente une feuille Excel. Pour ouvrir un fichier Excel en utilisant C#, nous utilisons WorkBook.Load et spécifions le chemin d'accès au fichier Excel (.xlsx). La ligne de code suivante permet d'ouvrir le fichier en lecture :

// Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");
// Load WorkBook
var workbook = WorkBook.Load(@"Spreadsheets\\sample.xlsx");
' Load WorkBook
Dim workbook = WorkBook.Load("Spreadsheets\\sample.xlsx")
$vbLabelText   $csharpLabel

Chaque classeur peut contenir plusieurs objets feuille de calcul. Ce sont des feuilles de calcul du document Excel. Si le classeur contient des feuilles de calcul, récupérez-les par leur nom comme suit :

// Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");
// Open Sheet for reading
var worksheet = workbook.GetWorkSheet("sheetnamegoeshere");
' Open Sheet for reading
Dim worksheet = workbook.GetWorkSheet("sheetnamegoeshere")
$vbLabelText   $csharpLabel

Code pour lire les valeurs des cellules :

// Read from Ranges of cells elegantly.
foreach (var cell in worksheet["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
// Read from Ranges of cells elegantly.
foreach (var cell in worksheet["A2:A10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
' Read from Ranges of cells elegantly.
For Each cell In worksheet("A2:A10")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
$vbLabelText   $csharpLabel

5.2. Lire des fichiers Excel à l'aide de Microsoft.Office.Interop.Excel

Cela utilise également une seule ligne de code pour ouvrir un classeur et une feuille de calcul. Le code se présente comme suit :

Excel.Application xlApp = new Excel.Application();  

// Load WorkBook
Excel.Workbook xlWorkBook = xlApp.Workbooks.Open(filePath);  

// Open Sheet for reading
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
Excel.Application xlApp = new Excel.Application();  

// Load WorkBook
Excel.Workbook xlWorkBook = xlApp.Workbooks.Open(filePath);  

// Open Sheet for reading
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
Dim xlApp As New Excel.Application()

' Load WorkBook
Dim xlWorkBook As Excel.Workbook = xlApp.Workbooks.Open(filePath)

' Open Sheet for reading
Dim xlWorkSheet As Excel.Worksheet = CType(xlWorkBook.Worksheets.Item(1), Excel.Worksheet)
$vbLabelText   $csharpLabel

Code pour lire les valeurs des cellules :

// Get the entire range of cells
Excel.Range xlRange = xlWorkSheet.UsedRange;

// Reading first 10 rows with two columns
for (int rowCount = 1; rowCount <= 10; rowCount++)  
{  
    string firstValue = Convert.ToString((xlRange.Cells[rowCount, 1] as Excel.Range).Text);  
    string secondValue = Convert.ToString((xlRange.Cells[rowCount, 2] as Excel.Range).Text);  

    Console.WriteLine(firstValue + "\t" + secondValue);  
}
// Get the entire range of cells
Excel.Range xlRange = xlWorkSheet.UsedRange;

// Reading first 10 rows with two columns
for (int rowCount = 1; rowCount <= 10; rowCount++)  
{  
    string firstValue = Convert.ToString((xlRange.Cells[rowCount, 1] as Excel.Range).Text);  
    string secondValue = Convert.ToString((xlRange.Cells[rowCount, 2] as Excel.Range).Text);  

    Console.WriteLine(firstValue + "\t" + secondValue);  
}
Imports Microsoft.VisualBasic

' Get the entire range of cells
Dim xlRange As Excel.Range = xlWorkSheet.UsedRange

' Reading first 10 rows with two columns
For rowCount As Integer = 1 To 10
	Dim firstValue As String = Convert.ToString((TryCast(xlRange.Cells(rowCount, 1), Excel.Range)).Text)
	Dim secondValue As String = Convert.ToString((TryCast(xlRange.Cells(rowCount, 2), Excel.Range)).Text)

	Console.WriteLine(firstValue & vbTab & secondValue)
Next rowCount
$vbLabelText   $csharpLabel

Toutefois, la vérification de l'installation d'Excel et la création de son instance font partie intégrante de cette procédure.

6. Utilisation des plages de valeurs dans les fichiers Excel

6.1. Utilisation d'une plage de valeurs avec IronXL

Dans IronXL, une seule ligne de code nous permet d'obtenir la plage de valeurs de cellules particulières. Ensuite, à l'aide d'une boucle, la valeur de chaque cellule peut être lue ou modifiée. Le code se présente comme suit :

// Load the workbook and get the first worksheet
WorkBook workbook = WorkBook.Load("test.xls");
WorkSheet sheet = workbook.WorkSheets.First();

// This is how we get range from Excel worksheet
var range = sheet["A2:A8"];
// This is how we can iterate over our range and read or edit any cell
foreach (var cell in range)
{
    Console.WriteLine(cell.Value);
}
// Load the workbook and get the first worksheet
WorkBook workbook = WorkBook.Load("test.xls");
WorkSheet sheet = workbook.WorkSheets.First();

// This is how we get range from Excel worksheet
var range = sheet["A2:A8"];
// This is how we can iterate over our range and read or edit any cell
foreach (var cell in range)
{
    Console.WriteLine(cell.Value);
}
' Load the workbook and get the first worksheet
Dim workbook As WorkBook = WorkBook.Load("test.xls")
Dim sheet As WorkSheet = workbook.WorkSheets.First()

' This is how we get range from Excel worksheet
Dim range = sheet("A2:A8")
' This is how we can iterate over our range and read or edit any cell
For Each cell In range
	Console.WriteLine(cell.Value)
Next cell
$vbLabelText   $csharpLabel

6.2. Utilisation des plages de valeurs avec Microsoft.Office.Interop.Excel

Cela utilise également une seule ligne de code pour obtenir la plage de valeurs des cellules. Les cellules peuvent ensuite être mises à jour avec les valeurs requises. Le code se présente comme suit :

Excel.Application xlApp = new Excel.Application();  
Excel.Workbook xlWorkBook = xlApp.Workbooks.Open(filePath);  
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

// Get range of values and updating their format
var range = xlWorkSheet.get_Range("A1", "D1");
range.NumberFormat = "$0.00";
Excel.Application xlApp = new Excel.Application();  
Excel.Workbook xlWorkBook = xlApp.Workbooks.Open(filePath);  
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

// Get range of values and updating their format
var range = xlWorkSheet.get_Range("A1", "D1");
range.NumberFormat = "$0.00";
Dim xlApp As New Excel.Application()
Dim xlWorkBook As Excel.Workbook = xlApp.Workbooks.Open(filePath)
Dim xlWorkSheet As Excel.Worksheet = CType(xlWorkBook.Worksheets.Item(1), Excel.Worksheet)

' Get range of values and updating their format
Dim range = xlWorkSheet.get_Range("A1", "D1")
range.NumberFormat = "$0.00"
$vbLabelText   $csharpLabel

7. Utilisation des formules Excel

Les formules Excel constituent la partie la plus importante du travail avec les fichiers Excel. Les deux bibliothèques offrent la possibilité de travailler avec des formules et de les appliquer facilement aux cellules.

7.1. Utilisation des formules Excel avec IronXL

Après avoir chargé le classeur et la feuille de calcul, l'exemple de code suivant peut être utilisé pour modifier les formules ou les appliquer à des cellules spécifiques. Le code se présente comme suit :

// Set Formulas
worksheet["A1"].Formula = "Sum(B8:C12)";
worksheet["B8"].Formula = "=C9/C11";
worksheet["G30"].Formula = "Max(C3:C7)";

// Force recalculate all formula values in all sheets.  
workbook.EvaluateAll();
// Set Formulas
worksheet["A1"].Formula = "Sum(B8:C12)";
worksheet["B8"].Formula = "=C9/C11";
worksheet["G30"].Formula = "Max(C3:C7)";

// Force recalculate all formula values in all sheets.  
workbook.EvaluateAll();
' Set Formulas
worksheet("A1").Formula = "Sum(B8:C12)"
worksheet("B8").Formula = "=C9/C11"
worksheet("G30").Formula = "Max(C3:C7)"

' Force recalculate all formula values in all sheets.  
workbook.EvaluateAll()
$vbLabelText   $csharpLabel

Vous pouvez également récupérer les formules et leurs valeurs.

// Get Formulas
// Get the formula's calculated value.  e.g. "52"
string formulaValue = worksheet["G30"].Value;

// Get the formula as a string. e.g. "Max(C3:C7)"
string formulaString = worksheet["G30"].Formula;

// Save your changes with updated formulas and calculated values.
workbook.Save();
// Get Formulas
// Get the formula's calculated value.  e.g. "52"
string formulaValue = worksheet["G30"].Value;

// Get the formula as a string. e.g. "Max(C3:C7)"
string formulaString = worksheet["G30"].Formula;

// Save your changes with updated formulas and calculated values.
workbook.Save();
' Get Formulas
' Get the formula's calculated value.  e.g. "52"
Dim formulaValue As String = worksheet("G30").Value

' Get the formula as a string. e.g. "Max(C3:C7)"
Dim formulaString As String = worksheet("G30").Formula

' Save your changes with updated formulas and calculated values.
workbook.Save()
$vbLabelText   $csharpLabel

7.2. Utilisation des formules Excel avec Microsoft.Office.Interop.Excel

De même, après avoir chargé le classeur et la feuille de calcul, le code suivant peut être utilisé pour travailler sur les formules Excel. Voici un exemple de code :

// Get range of values and updating their format
var range1 = xlWorkSheet.get_Range("A1", "D1");
var range2 = xlWorkSheet.get_Range("C2", "C6");

// Set Formula
range1.Formula = "=RAND()*100000";
range2.Formula = "=A2 & \" \" & B2";
// Get range of values and updating their format
var range1 = xlWorkSheet.get_Range("A1", "D1");
var range2 = xlWorkSheet.get_Range("C2", "C6");

// Set Formula
range1.Formula = "=RAND()*100000";
range2.Formula = "=A2 & \" \" & B2";
' Get range of values and updating their format
Dim range1 = xlWorkSheet.get_Range("A1", "D1")
Dim range2 = xlWorkSheet.get_Range("C2", "C6")

' Set Formula
range1.Formula = "=RAND()*100000"
range2.Formula = "=A2 & "" "" & B2"
$vbLabelText   $csharpLabel

8. Licence

IronXL est une bibliothèque Excel C# à vocation commerciale. Son utilisation est gratuite pour le développement et il est toujours possible d'acquérir une licence pour un déploiement commercial. Licenses are available for single-project use, single developers, agencies, and global corporations, as well as SaaS and OEM redistribution. Toutes les licences incluent une garantie de remboursement de 30 jours, un an de support produit et de mises à jour, validité pour dev/staging/production, et également une licence permanente (achat unique). Le package Lite commence par $799 .

Pour Microsoft Office Interop Excel, les applications utilisant ce fichier DLL ne nécessitent pas de licence distincte, que ce soit pour un usage individuel ou commercial. Pour qu'une solution puisse fonctionner avec une application Office, les applications Microsoft Office doivent être installées et sous licence sur la machine où la solution est exécutée. La DLL sera toujours présente sur la machine où l'application Office est installée, et elle y sera enregistrée. Dans le même temps, l'assembly d'interopérabilité principal (PIA) nécessaire aux solutions .NET utilisant l'" interopérabilité " sera également installé dans le GAC.

9. Résumé et conclusion

Summary

La lecture et la création de fichiers Excel (XLS, XLSX et CSV) en C# et dans tous les autres langages .NET sont faciles grâce à la bibliothèque logicielle IronXL d'Iron Software. IronXL ne nécessite pas l'installation d'Excel sur votre serveur ni d'Interop. IronXL offre une API plus rapide et plus intuitive que Microsoft.Office.Interop.Excel . IronXL fonctionne sur .NET Core 2, Framework 4.5, Azure, Mono, Mobile et Xamarin.

L'interopérabilité Microsoft Office (automatisation Excel) est une option lors de la création/lecture de fichiers Excel (XLS, XLSX, CSV) à partir d'applications C# ou VB.NET. Il nécessite que toutes les machines clientes aient la même version de Microsoft Excel installée et ne fonctionne que sur les systèmes d'exploitation Windows.

Conclusion

IronXL présente ici un net avantage sur Microsoft.Office.Interop.Excel, car il ne nécessite pas l'installation de l'application Microsoft Office Excel sur la machine locale ou le serveur pour fonctionner. De plus, lors de l'utilisation d'Excel Automation, Microsoft Excel est chargé en arrière-plan, utilisant beaucoup de Mo et chargeant un grand nombre de fichiers et de DLL par rapport à IronXL. IronXL possède une API plus rapide et plus intuitive que celle de Microsoft.Office.Interop.Excel .

Les applications Microsoft Office (y compris Excel) ont été conçues comme des applications d'interface utilisateur, et par conséquent leur API est très lente. Microsoft déconseille l'utilisation d'Excel Automation (ou de toute autre fonction d'interopérabilité Office) sur le serveur. Dans ce cas précis, grâce à toutes ses fonctionnalités robustes, IronXL est le meilleur choix pour l'intégration dans les applications logicielles.

Veuillez noterMicrosoft Office est une marque déposée de son propriétaire respectif. Ce site n'est ni affilié à, ni approuvé par, ni sponsorisé par Microsoft Office. Tous les noms de produits, logos et marques appartiennent à leurs propriétaires respectifs. Les comparaisons sont faites à titre d'information uniquement et reflètent les informations publiquement disponibles au moment de la rédaction.

Questions Fréquemment Posées

Comment puis-je créer et modifier des fichiers Excel en C# sans installer Microsoft Excel ?

Vous pouvez utiliser IronXL pour créer et modifier des fichiers Excel en C# sans avoir besoin d'installer Microsoft Excel sur votre machine. IronXL fournit une bibliothèque autonome qui fonctionne avec divers formats de fichiers Excel et prend en charge plusieurs plateformes.

Quels sont les avantages d'utiliser IronXL plutôt que Microsoft Office Interop pour les opérations Excel ?

IronXL offre plusieurs avantages par rapport à Microsoft Office Interop, tels que ne pas nécessiter l'installation d'Excel, la prise en charge de plusieurs plateformes, y compris .NET Core et Azure, et une API plus rapide et plus intuitive.

Puis-je utiliser IronXL pour lire et écrire différents formats de fichiers Excel ?

Oui, IronXL prend en charge la lecture et l'écriture de divers formats de fichiers Excel, notamment XLS, XLSX, CSV et TSV, ce qui le rend polyvalent pour différents besoins d'application.

IronXL est-il compatible avec .NET Core et d'autres environnements ?

IronXL est entièrement compatible avec .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS et Azure, offrant une flexibilité pour différents environnements de développement.

Comment IronXL gère-t-il les formules Excel ?

IronXL permet aux utilisateurs de configurer et de récupérer facilement des formules Excel. Il recalcule automatiquement les formules lorsqu'une feuille est modifiée et prend en charge la sauvegarde des formules mises à jour et de leurs valeurs calculées.

Quel support est disponible lors de l'utilisation d'IronXL dans un projet ?

IronXL offre un support étendu, y compris la documentation API en ligne, des extraits de code pour commencer, des tutoriels, des exemples sur GitHub et un support professionnel de la part de Team Iron.

Quelles sont les limitations de l'utilisation de Microsoft Office Interop pour Excel sur les serveurs ?

Microsoft ne recommande pas d'utiliser Excel Automation ou tout Office Interop sur les serveurs en raison de problèmes de performance et de l'exigence d'installation de Microsoft Excel, ce qui peut entraîner des défis de maintenance.

Comment IronXL améliore-t-il les performances par rapport aux bibliothèques interop Excel traditionnelles ?

IronXL offre une API plus rapide et plus efficace que Microsoft Office Interop Excel, qui est conçue comme une application UI et a tendance à être plus lente et gourmande en ressources.

IronXL est-il adapté à une utilisation commerciale dans les applications logicielles ?

Oui, IronXL peut être licencié pour une utilisation commerciale avec diverses options de licence, y compris pour un seul projet, pour les développeurs et des licences mondiales, toutes incluant une garantie de remboursement de 30 jours.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite