COMPARAISON AVEC D'AUTRES COMPOSANTS

Comparaison entre IronXL et Syncfusion Excel

Publié juin 7, 2022
Partager:

Introduction

La manipulation programmatique d'Excel peut s'avérer difficile pour les développeurs. Plusieurs problèmes se posent lorsque l'on tente de modifier des fichiers Microsoft Excel. Les principaux problèmes sont la difficulté avec l'interface utilisateur et le manque de documentation, ce qui rend difficile la manipulation d'un fichier Excel. Heureusement, nous disposons aujourd'hui de bibliothèques Excel écrites par des programmeurs compétents. Ces bibliothèques permettent d'éditer les données des fichiers Microsoft Excel. Je parlerai ici de deux bibliothèques C# pour Excel :

  • IronXL : Bibliothèque Excel C#
  • Syncfusion Excel Framework

    Commençons par une comparaison de ces bibliothèques.

IronXL : Bibliothèque Excel C

IronXL est une bibliothèque .NET Excel de codes C# développée par Iron Software qui est utilisé pour manipuler les documents Excel de manière programmatique. IronXL est inscrite sur le framework .NET et simplifie le processus de développement d'applications qui nécessitent normalement Microsoft Excel pour fonctionner.

IronXL fournit au programmeur un ensemble de classes, de méthodes et de propriétés qui peuvent être utilisées pour lecture et écriture de données de/vers un classeur Excel, en manipulant les objets du classeur, l'accès aux sources de données externeset chargement des données dans un classeur Excel.

Examinons les caractéristiques d'IronXL.

Caractéristiques d'IronXL

Il existe de nombreux caractéristiques d'IronXL qui la distinguent des autres bibliothèques.

Charge, lecture et modification des données

IronXL permet de charger, de lire et d'éditer des données à partir de documents de type feuille de calcul (XLS), XLSXxLST, XLSM, CSVet TSV. IronXL fournit des fonctions très simples et faciles à retenir pour créer, lire et éditer ces documents de feuille de calcul. Il offre un contrôle total sur les documents.

Création de graphiques

IronXL dispose d'une grande variété de fonctions pour créer des feuilles de calcul avec graphiques personnalisés. Il dispose d'une bonne documentation sur l'API pour les prendre en charge.

Sauvegarde et exportation

IronXL est idéal pour enregistrer et exporter des documents dans plusieurs formats. IronXL permet d'exporter ou de convertir des fichiers Excel aux formats XLS, XLSX, XLST, XLSM, CSV, TSV et JSON.

Travailler avec des formules

IronXL prend en charge travailler avec des formules dans les fichiers Excel. Nous pouvons créer n'importe quelle formule et l'appliquer à n'importe quelle cellule en fonction de nos besoins. IronXL dispose d'excellentes fonctions simples pour nous aider à travailler avec des formules.

Formats de données cellulaires

Les utilisateurs d'Excel ont souvent besoin d'utiliser le formatage dans les cellules Excel. IronXL prend en charge les services avancés de formatage conditionnel caractéristiques. IronXL est là pour vous aider à formater les données des cellules grâce à des fonctions simples et faciles à utiliser. IronXL prend en charge tous les formats supportés par Microsoft Excel. Vous pouvez formater les données avec ces formats :

  • Texte
  • Nombre
  • Formules
  • Dates
  • Monnaie
  • Pourcentages
  • Scientifique
  • L'heure
  • Formats personnalisés

Stylisme cellulaire

La mise en forme des cellules est une fonctionnalité importante de Microsoft Excel qui permet de différencier les données importantes. C'est très utile, et IronXL prend également en charge cette fonctionnalité. Vous pouvez modifier le style et la taille des polices, motif de fond, la bordure et l'alignement en utilisant les fonctions IronXL.

Syncfusion Excel

Les Bibliothèque Syncfusion fournit une API pour la lecture, l'écriture et la manipulation de Microsoft Excel (XLS) des dossiers. La bibliothèque Syncfusion est une bibliothèque C# qui peut être utilisée par les développeurs pour créer leurs applications de lecture, d'écriture et de manipulation de Microsoft Excel (XLS) des dossiers. **Importation de données personnalisées est également pris en charge. Il est compatible avec tous les systèmes d'exploitation qui prennent en charge les langages de programmation C#.

Caractéristiques de Syncfusion Excel

Examinons les caractéristiques de la bibliothèque Excel de Syncfusion :

  • Créer des documents Excel à partir de zéro.
  • Modifier des documents Excel existants.
  • Importer et exporter des données.
  • Prend en charge les formules Excel.
  • Permet la création et la manipulation de tableaux, tableaux croisés dynamiqueset les tableaux croisés dynamiques.
  • Remplir les données à l'aide de marqueurs de gabarit.

    Voyons comment fonctionnent ces bibliothèques. Afin de vérifier les différentes fonctionnalités, nous devons d'abord créer un projet C#. Commençons donc par là.

1. Création d'un projet C

Ce tutoriel utilisera la version 2019 de Visual Studio (la dernière version est recommandée) et le langage de programmation C# pour construire un projet.

  • Ouvrez Visual Studio 2019.
  • Cliquez sur "Créer" pour créer un nouveau projet.
  • Sélectionnez C# Console Application dans les modèles et cliquez sur le bouton Suivant.

    Application de la console

    Console Application

  • Donnez un nom au projet et cliquez sur le bouton Suivant.

    Configuration du projet

    Configuration du projet

  • Sélectionnez le Framework .NET cible >= 3.1 car la version 3.1 est prise en charge et fonctionne sur tous les appareils. La version la plus récente et la plus stable du Framework .NET est 5.0. Cliquez sur le bouton Create. Il créera une application console C#.

    framework .NET

    .NET Target Framework

    Vous pouvez également utiliser des projets C# existants. Il suffit d'ouvrir le projet et d'installer les bibliothèques. Nous verrons comment installer les bibliothèques Excel dans la section suivante.

2. Installation de la bibliothèque IronXL

Il existe plusieurs façons de télécharger et d'installer la bibliothèque IronXL. Il s'agit des éléments suivants :

  1. Console du gestionnaire de paquets

  2. Utilisation du gestionnaire de paquets NuGet

2.1 Console du gestionnaire de paquets

Nous pouvons installer la bibliothèque IronXL à l'aide de la console du gestionnaire de paquets. Suivez les étapes ci-dessous pour l'installer :

  • Ouvrez la console du gestionnaire de paquets. Il est généralement situé vers le bas de Visual Studio.

    Console du gestionnaire de paquets Console de gestion des paquets

  • Tapez la commande suivante et appuyez sur Entrée.
  :ProductInstall
  • L'installation de la bibliothèque IronXL commence.

    Installation d'IronXL

    Installation d'IronXL

  • Après l'installation, nous pouvons l'utiliser dans notre projet.

2.2 Installation à l'aide du gestionnaire de paquets NuGet

Nous pouvons installer la bibliothèque IronXL directement à partir du gestionnaire de paquets NuGet. Suivez les étapes suivantes pour installer IronXL :

  • Cliquez sur Outils dans la barre de menu et survolez NuGet Package Manager.

    Gestionnaire de paquets NuGet

    NuGet Package Manager

  • Sélectionnez Gérer les paquets NuGet pour la solution. Cliquez sur Browse et écrivez IronXL dans la barre de recherche. La bibliothèque IronXL apparaîtra dans les résultats de la recherche.

    Gérer les paquets NuGet

    Gestion des paquets NuGet

  • Cliquez sur IronXL.Excel et cliquez sur le bouton Installer. La bibliothèque sera installée automatiquement.

3. Installation de la bibliothèque Excel de Syncfusion

Nous pouvons installer la bibliothèque Excel de Syncfusion à l'aide de la console du gestionnaire de paquets. Contrairement à IronXL, nous devons installer chaque bibliothèque différemment pour différents projets tels que Windows Forms, WPF, ASP.NET, UWP et autres. Nous devons écrire des commandes différentes pour les différentes plates-formes.

3.1 Installation à l'aide de la console du gestionnaire de paquets

Suivez les étapes ci-dessous pour installer la bibliothèque Excel de Syncfusion :

  • Allez dans la console du gestionnaire de paquets.
  • Ecrivez la commande suivante pour installer la bibliothèque Excel de Syncfusion :
  • Ecrivez les commandes suivantes pour utiliser la bibliothèque Excel de Syncfusion avec Windows Forms et WPF.
    :InstallCmd Install-Package Syncfusion.XlsIO.WinForms
    :InstallCmd Install-package Syncfusion.XlsIO.Wpf
  • L'installation de la bibliothèque commence. Après l'installation, vous pouvez facilement utiliser le framework Syncfusion Excel dans votre projet.

4. Lecture d'un document Excel

La lecture d'un document Excel est une fonctionnalité essentielle de toute bibliothèque Excel. Nous allons voir comment nous pouvons lire des fichiers Excel en utilisant les frameworks Excel d'IronXL et de Syncfusion.

4.1 IronXL

IronXL permet de lire des documents Excel sans utiliser Microsoft.Office.Interop.Excel. Avant de commencer à utiliser IronXL, il y a une étape importante à franchir : nous importons toujours IronXL dans notre fichier de programme. Donc, en haut, nous devons écrire la ligne de code suivante :

using IronXL;
using System.Linq;
using IronXL;
using System.Linq;
Imports IronXL
Imports System.Linq
VB   C#

Ensuite, écrivez les lignes de code suivantes pour lire et modifier les fichiers Excel sans avoir à écrire plusieurs lignes de code avec des connaissances en programmation de base.

//Supported spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
WorkBook workbook = WorkBook.Load("data.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
//Select cells easily in Excel notation and return the calculated value, date, text or formula
int cellValue = sheet ["A2"].IntValue;
// Read from Ranges of cells elegantly.
foreach (var cell in sheet ["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
//Supported spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
WorkBook workbook = WorkBook.Load("data.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
//Select cells easily in Excel notation and return the calculated value, date, text or formula
int cellValue = sheet ["A2"].IntValue;
// Read from Ranges of cells elegantly.
foreach (var cell in sheet ["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
'Supported spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
Dim workbook As WorkBook = WorkBook.Load("data.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()
'Select cells easily in Excel notation and return the calculated value, date, text or formula
Dim cellValue As Integer = sheet ("A2").IntValue
' Read from Ranges of cells elegantly.
For Each cell In sheet ("A2:B10")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
VB   C#

La fonction WorkBook.Load permet de charger facilement le classeur. Dans le code donné, nous voyons également les valeurs des cellules et les imprimons sur la console.

4.2 Syncfusion Excel

Voyons comment nous pouvons lire et modifier des fichiers Excel existants à l'aide du framework Excel de Syncfusion. Tout d'abord, afin d'utiliser le framework Excel de Syncfusion, nous devons importer Syncfusion dans notre projet. Pour ce faire, nous devons ajouter les lignes de code suivantes au début du fichier de code :

using Syncfusion.XlsIO;
using System.Drawing;
using Syncfusion.XlsIO;
using System.Drawing;
Imports Syncfusion.XlsIO
Imports System.Drawing
VB   C#

Ensuite, ajoutez les lignes de code suivantes dans le projet pour lire et accéder aux fichiers Excel en utilisant le framework Excel de Syncfusion.

//Create an instance of new ExcelEngine IApplication application
using (ExcelEngine excelEngine = new ExcelEngine())
{
    //Instantiate the Excel application object using IApplication application = excelengine excel
    IApplication application = excelEngine.Excel;

    //Set the Excelengine excel application defaultversion = excelversion
    application.DefaultVersion = ExcelVersion.Excel2016;

    //Load the existing Excel workbook into IWorkbook workbook = application. Workbooks
    IWorkbook workbook = application.Workbooks.Open("Sample.xlsx");

    //Get the first worksheet in the workbook into IWorksheet
    IWorksheet worksheet = workbook.Worksheets [0];

    //Assign some text in a cell
    worksheet.Range ["A3"].Text = "Hello World";

    //Save the Excel document
    workbook.SaveAs("Output.xlsx", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel2016);
}
//Create an instance of new ExcelEngine IApplication application
using (ExcelEngine excelEngine = new ExcelEngine())
{
    //Instantiate the Excel application object using IApplication application = excelengine excel
    IApplication application = excelEngine.Excel;

    //Set the Excelengine excel application defaultversion = excelversion
    application.DefaultVersion = ExcelVersion.Excel2016;

    //Load the existing Excel workbook into IWorkbook workbook = application. Workbooks
    IWorkbook workbook = application.Workbooks.Open("Sample.xlsx");

    //Get the first worksheet in the workbook into IWorksheet
    IWorksheet worksheet = workbook.Worksheets [0];

    //Assign some text in a cell
    worksheet.Range ["A3"].Text = "Hello World";

    //Save the Excel document
    workbook.SaveAs("Output.xlsx", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel2016);
}
'Create an instance of new ExcelEngine IApplication application
Using excelEngine As New ExcelEngine()
	'Instantiate the Excel application object using IApplication application = excelengine excel
	Dim application As IApplication = excelEngine.Excel

	'Set the Excelengine excel application defaultversion = excelversion
	application.DefaultVersion = ExcelVersion.Excel2016

	'Load the existing Excel workbook into IWorkbook workbook = application. Workbooks
	Dim workbook As IWorkbook = application.Workbooks.Open("Sample.xlsx")

	'Get the first worksheet in the workbook into IWorksheet
	Dim worksheet As IWorksheet = workbook.Worksheets (0)

	'Assign some text in a cell
	worksheet.Range ("A3").Text = "Hello World"

	'Save the Excel document
	workbook.SaveAs("Output.xlsx", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel2016)
End Using
VB   C#

Nous pouvons voir que pour lire des fichiers Excel dans Syncfusion Excel, nous devons d'abord définir la version d'Excel. Ensuite, nous pouvons ouvrir le fichier et le modifier. Pour enregistrer le fichier modifié, nous devons à nouveau définir le type de contenu du fichier modifié en fonction de la version d'Excel. IronXL est très facile à comprendre et à utiliser dans ce cas parce que nous n'avons pas eu à définir la version d'Excel, et parce que nous avons de petites fonctions faciles à retenir avec des paramètres dans IronXL.

5. Création de nouveaux documents Excel

Ensuite, nous comparerons les méthodes permettant de créer de nouveaux documents Excel et de remplir les documents créés avec des valeurs. Tout d'abord, nous verrons comment nous pouvons créer des documents dans IronXL.

5.1 IronXL

IronXL ne nécessite pas l'installation d'Excel sur votre serveur ou Interop. IronXL fournit une API plus rapide et plus intuitive que Microsoft.Office.Interop.Excel. Comme nous le savons déjà, nous devons d'abord importer la bibliothèque IronXL, puis écrire le code pour créer les fichiers Excel. Le code suivant est utilisé pour créer des fichiers Excel dans IronXL.

using IronXL;
//Create new Excel WorkBook document. 
WorkBook xlsxWorkbook = WorkBook.Create(ExcelFileFormat.XLSX);
xlsxWorkbook.Metadata.Author = "IronXL";
//Add a blank WorkSheet
WorkSheet xlsSheet = xlsxWorkbook.CreateWorkSheet("main_sheet");
//Add data and styles to the new worksheet
xlsSheet ["A1"].Value = "Hello World";
xlsSheet ["A2"].Style.BottomBorder.SetColor("#ff6600");
xlsSheet ["A2"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Double;
//Save the excel file
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
using IronXL;
//Create new Excel WorkBook document. 
WorkBook xlsxWorkbook = WorkBook.Create(ExcelFileFormat.XLSX);
xlsxWorkbook.Metadata.Author = "IronXL";
//Add a blank WorkSheet
WorkSheet xlsSheet = xlsxWorkbook.CreateWorkSheet("main_sheet");
//Add data and styles to the new worksheet
xlsSheet ["A1"].Value = "Hello World";
xlsSheet ["A2"].Style.BottomBorder.SetColor("#ff6600");
xlsSheet ["A2"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Double;
//Save the excel file
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
Imports IronXL
'Create new Excel WorkBook document. 
Private xlsxWorkbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
xlsxWorkbook.Metadata.Author = "IronXL"
'Add a blank WorkSheet
Dim xlsSheet As WorkSheet = xlsxWorkbook.CreateWorkSheet("main_sheet")
'Add data and styles to the new worksheet
xlsSheet ("A1").Value = "Hello World"
xlsSheet ("A2").Style.BottomBorder.SetColor("#ff6600")
xlsSheet ("A2").Style.BottomBorder.Type = IronXL.Styles.BorderType.Double
'Save the excel file
xlsxWorkbook.SaveAs("NewExcelFile.xlsx")
VB   C#

Output:

Sortie IronXL

Sortie IronXL

Nous pouvons définir les métadonnées des fichiers Excel. Il est très facile de définir la valeur des cellules et de les formater à l'aide de fonctions simples et conviviales. Nous utilisons la fonction Style.BottomBorder.SetColor pour définir la couleur de la bordure inférieure de la cellule.

5.2 Syncfusion Excel

Le code suivant montre comment créer un nouveau fichier Excel et le sauvegarder avec Syncfusion Excel. Ajoutez le code suivant et incluez les espaces de noms nécessaires :

using Syncfusion.XlsIO;
using Syncfusion.XlsIO;
Imports Syncfusion.XlsIO
VB   C#

Ajoutez maintenant les lignes de code suivantes :

//New instance of ExcelEngine is created equivalent to launching Microsoft Excel with no workbooks open
//Instantiate the spreadsheet creation engine
using (ExcelEngine excelEngine = new ExcelEngine())
{
  //Instantiate the Excel application object
  IApplication application = excelEngine.Excel;

  //Assigns default application version
  application.DefaultVersion = ExcelVersion.Excel2013;

  //A new workbook is created equivalent to creating a new workbook in Excel
  //Create a workbook with 1 worksheet using workbook = application Workbooks create
  IWorkbook workbook = application.Workbooks.Create(1);

  //Access first worksheet from the workbook
  IWorksheet worksheet = workbook.Worksheets [0];

  //Adding text to a cell
  worksheet.Range ["A1"].Text = "Hello World";

  //Saving the workbook to disk in XLSX format
  workbook.SaveAs("Sample.xlsx");
}
//New instance of ExcelEngine is created equivalent to launching Microsoft Excel with no workbooks open
//Instantiate the spreadsheet creation engine
using (ExcelEngine excelEngine = new ExcelEngine())
{
  //Instantiate the Excel application object
  IApplication application = excelEngine.Excel;

  //Assigns default application version
  application.DefaultVersion = ExcelVersion.Excel2013;

  //A new workbook is created equivalent to creating a new workbook in Excel
  //Create a workbook with 1 worksheet using workbook = application Workbooks create
  IWorkbook workbook = application.Workbooks.Create(1);

  //Access first worksheet from the workbook
  IWorksheet worksheet = workbook.Worksheets [0];

  //Adding text to a cell
  worksheet.Range ["A1"].Text = "Hello World";

  //Saving the workbook to disk in XLSX format
  workbook.SaveAs("Sample.xlsx");
}
'New instance of ExcelEngine is created equivalent to launching Microsoft Excel with no workbooks open
'Instantiate the spreadsheet creation engine
Using excelEngine As New ExcelEngine()
  'Instantiate the Excel application object
  Dim application As IApplication = excelEngine.Excel

  'Assigns default application version
  application.DefaultVersion = ExcelVersion.Excel2013

  'A new workbook is created equivalent to creating a new workbook in Excel
  'Create a workbook with 1 worksheet using workbook = application Workbooks create
  Dim workbook As IWorkbook = application.Workbooks.Create(1)

  'Access first worksheet from the workbook
  Dim worksheet As IWorksheet = workbook.Worksheets (0)

  'Adding text to a cell
  worksheet.Range ("A1").Text = "Hello World"

  'Saving the workbook to disk in XLSX format
  workbook.SaveAs("Sample.xlsx")
End Using
VB   C#

Le code ci-dessus crée un nouvel objet IWorkbook, puis il crée une feuille de calcul dans le Workbook à l'aide de la fonction Workbooks.Create()fonction. Il accède aux cellules des feuilles de calcul Excel par le biais de sa propriété "cells", puis il enregistre le fichier à l'aide de la propriétéSaveAs()` fonction.

6. Exportation de fichiers Excel

Nous verrons ensuite comment exporter des fichiers Excel vers d'autres formats de données. Il s'agit d'une fonctionnalité importante pour les bibliothèques Excel, car nous avons parfois besoin de données dans différents formats pour différents types de traitement. C'est pourquoi nous allons vérifier quelle bibliothèque offre des solutions simples et faciles.

6.1 IronXL

En utilisant IronXL, nous pouvons convertir des fichiers Excel avec une seule ligne de code. IronXL peut exporter des données Excel vers CSV, JSON, XML, XLSX, XLS, et bien d'autres encore.

Le code suivant permet de convertir des fichiers Excel en différents formats à l'aide d'IronXL.

//Export to many formats with fluent saving
xlsxWorkbook.SaveAs("NewExcelFile.xls");
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
xlsxWorkbook.SaveAsCsv("NewExcelFile.csv");
xlsxWorkbook.SaveAsJson("NewExcelFile.json");
xlsxWorkbook.SaveAsXml("NewExcelFile.xml");
//Export to many formats with fluent saving
xlsxWorkbook.SaveAs("NewExcelFile.xls");
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
xlsxWorkbook.SaveAsCsv("NewExcelFile.csv");
xlsxWorkbook.SaveAsJson("NewExcelFile.json");
xlsxWorkbook.SaveAsXml("NewExcelFile.xml");
'Export to many formats with fluent saving
xlsxWorkbook.SaveAs("NewExcelFile.xls")
xlsxWorkbook.SaveAs("NewExcelFile.xlsx")
xlsxWorkbook.SaveAsCsv("NewExcelFile.csv")
xlsxWorkbook.SaveAsJson("NewExcelFile.json")
xlsxWorkbook.SaveAsXml("NewExcelFile.xml")
VB   C#

Dans le code ci-dessus, nous voyons que nous pouvons exporter des fichiers Excel très facilement avec une seule ligne de code. Mais nous devons d'abord ouvrir ou créer le fichier Excel, et nous avons déjà vu ci-dessus comment nous pouvons ouvrir et créer un fichier Excel en utilisant IronXL.

6.2 Syncfusion Excel

Le framework Excel de Syncfusion permet de convertir des fichiers Excel au format PDF et JSON. Nous pouvons convertir des fichiers Excel au format JSON sans installer de bibliothèque supplémentaire. Voici le code permettant de convertir un fichier Excel ouvert en fichier JSON.

//Saves the workbook to a JSON file, as schema by default
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema-default.json");

//Saves the workbook to a JSON file as schema
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema.json", true);
//Saves the workbook to a JSON file, as schema by default
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema-default.json");

//Saves the workbook to a JSON file as schema
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema.json", true);
'Saves the workbook to a JSON file, as schema by default
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema-default.json")

'Saves the workbook to a JSON file as schema
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema.json", True)
VB   C#

Pour convertir des documents Excel typiques en fichiers PDF, nous devons installer une bibliothèque supplémentaire qui prendra en charge la conversion. Excel-to-ODS enregistre les fichiers Excel au format ODS pour les utiliser dans diverses applications telles que OpenOffice et Google Sheets. Excel-to-HTML rend dynamiquement un classeur ou une feuille de calcul Excel sous forme de fichier HTML.

7. Protection des fichiers Excel

La protection est la fonction la plus importante de Microsoft Excel. Il vous permet de contrôler qui peut modifier et ouvrir des fichiers. Les fichiers Excel protégés par un mot de passe sont importants car ils peuvent contenir des données importantes. Voyons comment nous pouvons protéger nos fichiers Excel à l'aide des bibliothèques Excel.

7.1 IronXL

En utilisant IronXL, nous pouvons protéger notre fichier Excel avec une seule ligne de code. Le code suivant montre comment ouvrir et protéger un fichier Excel.

using IronXL;

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet worksheet = workbook.DefaultWorkSheet;

//This is how we can protect the worksheet by setting the password to it
//Users will then need to know this password to edit the password protected Excel files worksheet in Excel.
worksheet.ProtectSheet("password");
workbook.Save();

//This is how to unprotect the worksheet and remove any password locks 
//It works even if you do not know the password!
worksheet.UnprotectSheet();
workbook.Save();
using IronXL;

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet worksheet = workbook.DefaultWorkSheet;

//This is how we can protect the worksheet by setting the password to it
//Users will then need to know this password to edit the password protected Excel files worksheet in Excel.
worksheet.ProtectSheet("password");
workbook.Save();

//This is how to unprotect the worksheet and remove any password locks 
//It works even if you do not know the password!
worksheet.UnprotectSheet();
workbook.Save();
Imports IronXL

Private workbook As WorkBook = WorkBook.Load("test.xlsx")
Private worksheet As WorkSheet = workbook.DefaultWorkSheet

'This is how we can protect the worksheet by setting the password to it
'Users will then need to know this password to edit the password protected Excel files worksheet in Excel.
worksheet.ProtectSheet("password")
workbook.Save()

'This is how to unprotect the worksheet and remove any password locks 
'It works even if you do not know the password!
worksheet.UnprotectSheet()
workbook.Save()
VB   C#

La "feuille de protection()la fonction permet à l'utilisateur de crypter un fichier Excel. Pour déprotéger la feuille, nous pouvons utiliser la fonctionUnprotectSheet()` après avoir chargé le fichier Excel. Cette fonction supprimera tous les mots de passe, même si vous ne les connaissez pas.

7.2 Syncfusion Excel

Nous pouvons protéger les fichiers Excel à l'aide du cadre Syncfusion Excel. Le code suivant permet de créer et de protéger un fichier Excel.

private void ProtectWorkbook()
{
    using (ExcelEngine excelEngine = new ExcelEngine())
    {
        //Instantiate the application object
        IApplication application = excelEngine.Excel;

        //Create a workbook
        IWorkbook workbook = application.Workbooks.Create(1);

        //Protect the workbook specifying a password with Boolean attributes for structure and windows protection
        bool isProtectWindow = true;
        bool isProtectContent = true;
        workbook.Protect(isProtectWindow, isProtectContent, "password");

        //Save the Excel file
        workbook.SaveAs(@"d:\test\XlsIOOutput_ProtectedWorkbook.xlsx");
    }
}
private void ProtectWorkbook()
{
    using (ExcelEngine excelEngine = new ExcelEngine())
    {
        //Instantiate the application object
        IApplication application = excelEngine.Excel;

        //Create a workbook
        IWorkbook workbook = application.Workbooks.Create(1);

        //Protect the workbook specifying a password with Boolean attributes for structure and windows protection
        bool isProtectWindow = true;
        bool isProtectContent = true;
        workbook.Protect(isProtectWindow, isProtectContent, "password");

        //Save the Excel file
        workbook.SaveAs(@"d:\test\XlsIOOutput_ProtectedWorkbook.xlsx");
    }
}
Private Sub ProtectWorkbook()
	Using excelEngine As New ExcelEngine()
		'Instantiate the application object
		Dim application As IApplication = excelEngine.Excel

		'Create a workbook
		Dim workbook As IWorkbook = application.Workbooks.Create(1)

		'Protect the workbook specifying a password with Boolean attributes for structure and windows protection
		Dim isProtectWindow As Boolean = True
		Dim isProtectContent As Boolean = True
		workbook.Protect(isProtectWindow, isProtectContent, "password")

		'Save the Excel file
		workbook.SaveAs("d:\test\XlsIOOutput_ProtectedWorkbook.xlsx")
	End Using
End Sub
VB   C#

Nous utilisons la fonction Protect() pour crypter le fichier Excel. Nous devons passer trois paramètres à la fonction si nous devons uniquement protéger la feuille ou si nous devons également protéger le contenu du fichier Excel. Le troisième paramètre sera le mot de passe que vous souhaitez définir.

8. Licences

8.1 IronXL

IronXL est absolument gratuit pour le développement. Vous pouvez en essayer tous les aspects pour vous développer. Cependant, la version de développement gratuite comportera un filigrane. Vous pouvez également l'essayer gratuitement en production. Vous pouvez activer le essai gratuit pour la production sans aucun paiement. Si vous choisissez d'acheter IronXL, les plans tarifaires sont les suivants :

Édition Lite ($749)

Vous pouvez choisir l'édition Lite si vous êtes un développeur unique et que vous souhaitez utiliser IronXL dans votre projet. C'est la meilleure option pour vous.

IronXL Lite

IronXL Lite

Édition professionnelle ($2,999)

L'édition professionnelle est la meilleure solution si vous avez une entreprise avec plusieurs succursales à travers le monde. Cette édition prend en charge 10 sites, 10 développeurs et 10 projets à la fois.

IronXL Professional

IronXL Professionnel

Edition illimitée ($2,999)

Ce plan tarifaire prend en charge un nombre illimité de développeurs, un nombre illimité de sites et un nombre illimité de projets pour toute la durée de vie avec un seul paiement. C'est la meilleure option si vous préférez utiliser IronXL dans de nombreux projets.

IronXL illimité

IronXL illimité

IronXL prend également en charge la distribution des redevances, et vous offre également une assistance produit et des mises à jour.

Distribution des redevances

Royalty Distribution

IronXL's page d'autorisation contient plus de détails sur la tarification et les droits d'utilisation.

8.2 Bibliothèque Excel de Syncfusion

La bibliothèque Excel de Syncfusion propose également une version d'essai gratuite. Si vous souhaitez acheter Syncfusion Excel, vous pouvez le faire au prix de 395 $ pour une équipe de cinq développeurs maximum. Syncfusion propose des licences supplémentaires pour des équipes de 10 développeurs ou plus, et des license Unlimited pour des projets individuels ou pour des entreprises entières.

Syncfusion

Syncfusion

9. Conclusion

Les deux bibliothèques offrent des fonctionnalités efficaces. Mais si l'on considère la situation dans son ensemble, IronXL est plus pratique et plus facile à utiliser. Il s'agit de petites fonctions faciles à mémoriser. Avec l'aide d'IronXL, vous pouvez faire beaucoup d'édition et de mise en forme avec une seule ligne de code. Le flux de code est complexe, mais un débutant peut le comprendre très facilement. Il n'est pas nécessaire de connaître ou de comprendre le fonctionnement d'IronXL. Il n'est pas nécessaire d'installer des bibliothèques distinctes pour les différentes plates-formes. Installez-le une fois, et vous serez prêt pour chaque action.

Syncfusion Excel possède de nombreuses fonctionnalités comme nous l'avons vu plus haut. Nous pouvons effectuer de nombreux formatages et conversions à l'aide de Syncfusion Excel. Nous pouvons créer de nouveaux documents Excel, modifier des fichiers Excel existants, effectuer des formatages multiples et procéder au cryptage. Nous devons installer une bibliothèque séparée pour effectuer les conversions.

IronXL propose différents plans tarifaires. Vous pouvez souscrire le plan le mieux adapté à vos besoins. Par exemple, si vous êtes le seul développeur et que vous avez besoin d'IronXL à des fins commerciales pour un projet, vous pouvez l'activer avec un paiement unique de seulement $749. Il est beaucoup plus rentable que Syncfusion, qui exige l'achat d'une bibliothèque pour une seule année au prix de 999 dollars, pour un seul développeur et un seul projet. IronXL est donc bien moins cher et offre de bien meilleurs choix que le framework Excel de Syncfusion.

En conclusion, IronXL est un meilleur choix que le framework Excel de Syncfusion. Comme nous l'avons vu dans les paragraphes précédents, il est très facile d'utiliser IronXL grâce à ses fonctions simples, et nous pouvons réaliser de nombreux formatages avec une seule ligne de code. Mais, dans le framework Excel de Syncfusion, nous devons écrire plusieurs lignes de code pour définir de nombreux éléments qui sont déjà définis dans IronXL au niveau du backend, et l'utilisateur n'a pas eu besoin de passer son temps à définir de multiples paramètres et variables. En outre, IronXL est également moins cher et offre de meilleures options de licence. Iron Software propose actuellement une offre spéciale permettant d'acheter cinq logiciels pour le prix de deux seulement. Cela signifie que vous pouvez l'achat de cinq logiciels Iron Software pour seulement $suiteLiteLicense.

< PRÉCÉDENT
Comparaison entre IronXL et GrapeCity Excel Viewer
SUIVANT >
Comparaison entre IronXL et Spire XLS