COMPARACIóN CON OTROS COMPONENTES

Comparación entre IronXL y Syncfusion Excel

Publicado en 7 de junio, 2022
Compartir:

Introducción

Manipular Excel mediante programación puede resultar difícil para los desarrolladores. Hay varios problemas que surgen al intentar editar archivos de Microsoft Excel. Los principales problemas son la dificultad con la interfaz de usuario y la falta de documentación, lo que dificulta el manejo de un archivo Excel. Pero, por suerte, ahora disponemos de algunas bibliotecas de Excel escritas por programadores expertos. Estas bibliotecas ayudan a editar datos de archivos de Microsoft Excel. Aquí hablaré de dos bibliotecas Excel C#:

  • IronXL: Biblioteca Excel C#
  • Marco de trabajo Syncfusion Excel

    Empecemos con una comparación de estas bibliotecas.

IronXL: Biblioteca Excel C

IronXL es una biblioteca .NET Excel de códigos C# desarrollada porIron Software que se utiliza para manipular mediante programación documentos Excel. IronXL está escrito en el.NET Framework y simplifica el proceso de desarrollo de aplicaciones que normalmente requieren Microsoft Excel para funcionar.

IronXL proporciona al programador un conjunto de clases, métodos y propiedades que pueden utilizarse paralectura y escritura de datos desde/a un libro Excel, manipulando objetos del libro,acceso a fuentes de datos externasydatos de carga en un libro de Excel.

Echemos un vistazo a las características de IronXL.

Características de IronXL

Hay muchoscaracterísticas de IronXL que la distinguen de otras bibliotecas.

Cargar, leer y editar datos

Con IronXL podemos cargar, leer y editar datos de documentos de hojas de cálculo como XLS,XLSXXLST, XLSM,CSVy TSV. IronXL proporciona funciones muy sencillas y fáciles de recordar para crear, leer y editar estos documentos de hoja de cálculo. Proporciona un control total sobre los documentos.

**Creación de gráficos

IronXL tiene una gran variedad de funciones para crear hojas de cálculo congráficos personalizados. Dispone de una buena documentación de la API para respaldarlos.

Guardar y exportar

IronXL es ideal para guardar y exportar documentos en múltiples formatos. IronXL permite exportar o convertir archivos de Excel a los formatos XLS, XLSX, XLST, XLSM, CSV, TSV y JSON.

**Trabajar con fórmulas

IronXL es compatible contrabajar con fórmulas en archivos Excel. Podemos crear cualquier fórmula y aplicarla a cualquier celda según nuestras necesidades. IronXL tiene excelentes y sencillas funciones para ayudarnos a trabajar con fórmulas.

**Formatos de datos de celdas

Los usuarios de Excel a menudo necesitan emplear el formato en las celdas de Excel. IronXL es compatible conformato condicional características. IronXL está aquí para ayudar a formatear datos de celdas con funciones simples y fáciles de usar. IronXL es compatible con todos los formatos admitidos por Microsoft Excel. Puede dar formato a los datos con estos formatos:

  • Texto
  • Número
  • Fórmulas
  • Fechas
  • Moneda
  • Porcentajes
  • Científico
  • Tiempo
  • Formatos personalizados

Estilismo celular

La estilización de celdas es una característica importante de Microsoft Excel que ayuda a diferenciar los datos importantes. Es muy útil, y IronXL también admite esta función. Puede cambiar el estilo y el tamaño de la fuente,patrón de fondo, borde y alineación utilizando las funciones IronXL.

Syncfusion Excel

EnBiblioteca Syncfusion proporciona una API para leer, escribir y manipular Microsoft Excel(XLS) archivos. La biblioteca Syncfusion es una biblioteca C# que puede ser utilizada por los desarrolladores para crear sus aplicaciones de lectura, escritura y manipulación de Microsoft Excel.(XLS) archivos. **Importación de datos personalizados también es compatible. Es compatible con todos los sistemas operativos que admiten lenguajes de programación C#.

Características de Syncfusion Excel

Veamos las características de la biblioteca Syncfusion Excel:

  • Crear documentos Excel desde cero.
  • Modificar documentos Excel existentes.

    -Importar y exportar datos.

  • Admite fórmulas de Excel.
  • Admite la creación y manipulación de tablas,tablas dinámicasy gráficos dinámicos.
  • Rellenar datos conmarcadores de plantilla.

    Veamos cómo funcionan estas bibliotecas. Para comprobar las distintas funcionalidades, necesitamos crear primero un proyecto C#. Así pues, empecemos.

1. Creación de un proyecto C

En este tutorial se utilizará la versión de Visual Studio 2019(se recomienda la última versión) y el lenguaje de programación C# para construir un proyecto.

  • Abrir Visual Studio 2019.
  • Haga clic en "Crear" para crear un nuevo proyecto.
  • Seleccione C# Console Application de las plantillas y haga clic en el botón Next.

    Aplicación de consola

    Aplicación de consola

  • Dé un nombre al proyecto y haga clic en el botón Siguiente.

    Configuración del proyecto

    Configuración del proyecto

  • Seleccione el marco de destino .NET >= 3.1 porque 3.1 es compatible y funciona en todos los dispositivos. La versión más reciente y estable del .NET Framework es la 5.0. Haga clic en el botón Crear. Creará una aplicación de consola C#.

    Marco de trabajo de destino .NET

    Marco objetivo de .NET

    También puede utilizar proyectos C# existentes. Basta con abrir el proyecto e instalar las bibliotecas. Veremos cómo instalar las bibliotecas de Excel en la siguiente sección.

2. Instalación de la biblioteca IronXL

Existen varias formas de descargar e instalar la biblioteca IronXL. Son las siguientes:

  1. Consola del gestor de paquetes

  2. Uso del gestor de paquetes NuGet

2.1 Consola del gestor de paquetes

Podemos instalar la librería IronXL utilizando la Consola del Gestor de Paquetes. Siga los pasos que se indican a continuación para instalarlo:

  • Abra la Consola del Administrador de Paquetes. Suele encontrarse en la parte inferior de Visual Studio.

    Consola del gestor de paquetes Consola del Administrador de Paquetes

  • Escriba el siguiente comando y pulse Intro.
  :ProductInstall
  • Comenzará a instalar la biblioteca IronXL.

    Instalación de IronXL

    **Instalación de IronXL

  • Después de la instalación, podemos utilizarlo en nuestro proyecto.

2.2 Instalación mediante el gestor de paquetes NuGet

Podemos instalar la biblioteca IronXL directamente desde el gestor de paquetes NuGet. Siga estos pasos para instalar IronXL:

  • Haga clic en Herramientas de la barra de menús y pase el ratón sobre NuGet Package Manager.

    Gestor de paquetes NuGet

    Gestor de paquetes NuGet

  • Seleccione Gestionar paquetes NuGet para la solución. Haga clic en Browse y escriba IronXL en la barra de búsqueda. Mostrará la biblioteca IronXL en los resultados de la búsqueda.

    Gestión de paquetes NuGet

    Gestión de paquetes NuGet

  • Haga clic en IronXL.Excel y haga clic en el botón Install. La biblioteca se instalará automáticamente.

3. Instalación de la biblioteca Syncfusion Excel

Podemos instalar la biblioteca Syncfusion Excel utilizando la consola del gestor de paquetes. A diferencia de IronXL, necesitamos instalar cada librería de forma diferente para distintos proyectos como Windows Forms, WPF, ASP.NET, UWP y otros. Tenemos que escribir diferentes comandos para diferentes plataformas.

3.1 Instalación mediante la consola del gestor de paquetes

Siga los pasos que se indican a continuación para instalar la biblioteca Syncfusion Excel:

  • Vaya a la consola del gestor de paquetes.
  • Escriba el siguiente comando para instalar la biblioteca Syncfusion Excel:
  • Escriba los siguientes comandos para utilizar la biblioteca Syncfusion Excel con Windows Forms y WPF.
    :InstallCmd Install-Package Syncfusion.XlsIO.WinForms
    :InstallCmd Install-package Syncfusion.XlsIO.Wpf
  • Comenzará la instalación de la biblioteca. Después de la instalación, puede utilizar el marco Syncfusion Excel en su proyecto fácilmente.

4. Lectura de un documento Excel

La lectura de un documento Excel es una funcionalidad primordial de cualquier biblioteca Excel. Vamos a echar un vistazo a cómo podemos leer archivos de Excel utilizando el IronXL y Syncfusion Excel frameworks.

4.1 IronXL

IronXL permite la lectura de documentos Excel sin necesidad de utilizar Microsoft.Office.Interop.Excel. Antes de comenzar con IronXL, hay que dar un paso importante: siempre importamos IronXL a nuestro archivo de programa. Por lo tanto, en la parte superior, debemos escribir la siguiente línea de código:

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

A continuación, escriba las siguientes líneas de código para leer y editar archivos Excel sin la molestia de escribir varias líneas de código con conocimientos de programación básica.

//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 función WorkBook.Load ayuda a cargar el libro de trabajo fácilmente. En el código dado, también vemos los valores de las celdas y los imprimimos en la consola.

4.2 Syncfusion Excel

Veamos cómo podemos leer y editar archivos Excel existentes utilizando el marco de trabajo Syncfusion Excel. En primer lugar, con el fin de utilizar el marco Syncfusion Excel, tenemos que importar Syncfusion en nuestro proyecto. Para ello, tenemos que añadir las siguientes líneas de código en la parte superior del archivo de código:

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

A continuación, añada las siguientes líneas de código en el proyecto para leer y acceder a los archivos de Excel utilizando el marco de trabajo de Syncfusion Excel.

//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#

Podemos ver que para leer archivos de Excel en Syncfusion Excel, primero tenemos que definir la versión de Excel. A continuación, podemos abrir el archivo y editarlo. Para guardar el archivo modificado, tenemos que volver a definir el tipo de contenido del archivo modificado según la versión de Excel. IronXL es muy fácil de entender y fácil de usar en este caso porque no tuvimos que definir la versión de Excel, y porque tenemos funciones pequeñas y fáciles de recordar con parámetros en IronXL.

5. **Creación de nuevos documentos Excel

A continuación, compararemos los métodos para crear nuevos documentos Excel y rellenar los documentos creados con valores. En primer lugar, veremos cómo podemos crear documentos en IronXL.

5.1 IronXL

IronXL no requiere que Excel esté instalado en su servidor o Interop. IronXL proporciona una API más rápida e intuitiva que Microsoft.Office.Interop.Excel. Como ya sabemos, primero necesitamos importar la librería IronXL, y luego escribir el código para crear los archivos Excel. El siguiente código se utiliza para crear archivos de Excel en 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#

Salida:

Salida IronXL

**Salida IronXL

Podemos establecer los metadatos de los archivos Excel. Es muy fácil establecer el valor de las celdas y dar formato a las celdas con funciones sencillas y fáciles de usar. Utilizamos la función Style.BottomBorder.SetColor para establecer el color del borde inferior de la celda.

5.2 Syncfusion Excel

El siguiente código demuestra cómo crear un nuevo archivo Excel y guardarlo con Syncfusion Excel. Añade el siguiente código e incluye los espacios de nombres necesarios:

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

Ahora añade las siguientes líneas de código:

//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#

El código anterior crea un nuevo objeto IWorkbook, y luego crea una Hoja de Trabajo dentro del Libro de Trabajo utilizando el comando Workbooks.Create() función. Obtiene acceso a las celdas de las hojas de cálculo de Excel a través de su propiedad "cells" y, por último, guarda el archivo utilizando la propiedad SaveAs() función.

6. Exportación de archivos Excel

A continuación, veremos cómo podemos exportar archivos Excel a otros formatos de datos. Esta es una característica importante para las bibliotecas de Excel porque a veces necesitamos datos en diferentes formatos para diferentes tipos de procesamiento -- por eso comprobaremos qué biblioteca ofrece soluciones simples y fáciles.

6.1 IronXL

Usando IronXL, podemos convertir archivos Excel con sólo una línea de código. IronXL puede exportar datos de Excel a CSV, JSON, XML, XLSX, XLS, y muchos más.

El siguiente código ayuda a convertir archivos Excel a diferentes formatos utilizando 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#

En el código anterior, vemos que podemos exportar archivos Excel muy fácilmente con sólo una línea de código. Pero, necesitamos abrir o crear el archivo de Excel primero, y ya hemos visto arriba cómo podemos abrir y crear un archivo de Excel usando IronXL.

6.2 Syncfusion Excel

El marco Syncfusion Excel puede convertir archivos Excel a formato PDF y JSON. Podemos convertir archivos Excel a formato JSON sin instalar una biblioteca adicional. A continuación se muestra el código para convertir un archivo Excel abierto en un archivo 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#

Para convertir documentos Excel típicos en archivos PDF, necesitamos instalar una biblioteca adicional que proporcione soporte para la conversión. Excel-to-ODS guarda archivos Excel en formatos ODS para utilizarlos en diversas aplicaciones como OpenOffice y Google Sheets. Excel-to-HTML convierte dinámicamente un libro o una hoja de cálculo de Excel en un archivo HTML.

7. Protección de archivos Excel

La protección es la característica más importante de Microsoft Excel. Te permite controlar quién puede editar y abrir archivos. Los archivos Excel protegidos con contraseña son importantes porque pueden almacenar datos importantes. Veamos cómo podemos proteger nuestros archivos de Excel utilizando las bibliotecas de Excel.

7.1 IronXL

Usando IronXL, podemos proteger nuestro archivo Excel con una línea de código. El siguiente código demuestra cómo podemos abrir y proteger un archivo 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 hoja ProtectSheet()permite al usuario encriptar un fichero Excel. Para desproteger la hoja, podemos utilizar la funciónUnprotectSheet()` después de cargar el fichero Excel. Esta función eliminará todas las contraseñas, aunque no las conozca.

7.2 Syncfusion Excel

Podemos proteger archivos Excel utilizando el marco de trabajo Syncfusion Excel. El siguiente código nos permite crear y proteger un fichero 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#

Utilizamos la función() para cifrar el archivo de Excel. Necesitamos pasar tres parámetros a la función si sólo necesitamos proteger la hoja, o si también necesitamos proteger el contenido del fichero Excel. El tercer parámetro será la contraseña que queramos establecer.

8. Licencias

8.1 IronXL

IronXL es totalmente gratuito para el desarrollo. Puede probar todos y cada uno de sus aspectos para el desarrollo. Pero, habrá una marca de agua en la versión gratuita de desarrollo. También puedes probarlo gratis en producción. Puede activar elprueba gratuita para la producción sin ningún pago. Si decide adquirir IronXL, los planes de precios son los siguientes:

Edición Lite ($749)

Puede elegir la Edición Lite si es un único desarrollador y desea utilizar IronXL en su proyecto. Esta será la mejor opción para usted.

IronXL Lite

IronXL Lite

Edición profesional (Licencia profesional)

La Edición Professional es la mejor si tiene una empresa con múltiples sucursales en todo el mundo. Esta edición admite 10 ubicaciones, 10 desarrolladores y 10 proyectos a la vez.

IronXL Professional

IronXL Professional

Edición ilimitada (Licencia ilimitada)

Este plan de precios admite desarrolladores ilimitados, ubicaciones ilimitadas y proyectos ilimitados de por vida con un solo pago. Es la mejor opción si prefiere utilizar IronXL en muchos proyectos.

IronXL ilimitado

IronXL Unlimited

IronXL también admite la distribución de derechos de autor, y además le ofrece soporte y actualizaciones del producto.

Distribución de cánones

Distribución de regalías

IronXLpágina de licencias contiene más detalles sobre precios y derechos de uso.

8.2 Biblioteca Syncfusion Excel

La biblioteca Syncfusion Excel también ofrece una versión de prueba gratuita. Si desea adquirir Syncfusion Excel, puede hacerlo por 395 dólares para un equipo de hasta cinco desarrolladores. Syncfusion ofrece licencias adicionales paraequipos de 10 o más desarrolladoresy especiallicencias ilimitadas para su uso en proyectos individuales o para empresas enteras.

Syncfusion

Syncfusion

9. Conclusión

Ambas bibliotecas ofrecen funcionalidades eficaces. Pero, si nos fijamos en el panorama general, IronXL es más cómodo y fácil de usar. Tiene funciones pequeñas y fáciles de recordar. Con la ayuda de IronXL, usted puede hacer un montón de edición y formato con una sola línea de código. El flujo de código es complejo, pero un principiante puede entenderlo muy fácilmente. No es necesario que conozca o entienda el funcionamiento de IronXL. No es necesario instalar bibliotecas independientes para las distintas plataformas. Instálelo una vez y estará listo para cualquier acción.

Syncfusion Excel tiene muchas características como hemos visto anteriormente. Podemos hacer muchos formateos y conversiones con la ayuda de Syncfusion Excel. Podemos crear nuevos documentos Excel, modificar archivos Excel ya existentes, realizar múltiples formateos y encriptar. Tenemos que instalar una biblioteca independiente para realizar las conversiones.

IronXL tiene varios planes de precios. Puede contratar el plan que mejor se adapte a sus necesidades. Por ejemplo, si usted es el único desarrollador y necesita IronXL con fines comerciales para un proyecto, puede activarlo con un pago único de sólo $749. Es mucho más rentable que Syncfusion, que exige la compra de una biblioteca durante un solo año por 999 dólares, para un solo desarrollador y un solo proyecto. Por lo tanto, IronXL es mucho más barato y ofrece opciones mucho mejores que el marco Syncfusion Excel.

En conclusión, IronXL es una mejor opción que el marco Syncfusion Excel. Como hemos visto en los párrafos anteriores, es muy fácil utilizar IronXL gracias a sus sencillas funciones, y podemos hacer muchos formateos con una sola línea de código. Pero, en el marco de Syncfusion Excel, tenemos que escribir varias líneas de código para definir muchos elementos que ya están definidos en IronXL en el backend, y el usuario no tiene que gastar su tiempo en la definición de múltiples parámetros y variables. Además, IronXL también es más barato y tiene mejores opciones de licencia. Iron Software tiene actualmente una oferta especial por la que puede adquirir cinco paquetes de software por el precio de sólo dos. Esto significa que puedeadquirir cinco paquetes de Iron Software sólo para $suiteLiteLicense.

< ANTERIOR
Comparación entre IronXL y GrapeCity Excel Viewer
SIGUIENTE >
Comparación entre IronXL y Spire XLS

¿Listo para empezar? Versión: 2024.11 acaba de salir

Descarga gratuita de NuGet Descargas totales: 1,111,773 Ver licencias >