Saltar al pie de página
COMPARAR CON OTROS COMPONENTES

Una comparación entre IronXL y GrapeCity Excel Viewer

El uso de datos de Excel en una situación de programación con un entorno .NET puede causar una serie de problemas, especialmente cuando se trata de interoperabilidad.

Excel es el programa de hojas de cálculo más utilizado en el mundo. Los usuarios incluyen tanto a desarrolladores como al público en general, pero es más probable que los desarrolladores estén interesados en este contenido. Inicialmente, los desarrolladores no tenían muchas alternativas para integrar Excel en sus diversas aplicaciones. Sin embargo, la Suite de Office incluía VBA (Visual Basic for Applications), que permitía editar cualquier producto de Office para satisfacer sus necesidades.

Los desarrolladores personalizaron sus interacciones con hojas de cálculo XLSX y sus datos, así como sus características visuales, utilizando VBA en Excel.

¿Qué es GrapeCity Documents for Excel?

GrapeCity Documents para Excel .NET Edition es un nuevo componente de hoja de cálculo de alto rendimiento y pequeño tamaño que se puede utilizar en aplicaciones de servidor o de escritorio. Proporciona una rica API para crear, manipular, convertir y compartir hojas de cálculo compatibles con Microsoft Excel. También se puede utilizar desde casi cualquier aplicación o plataforma, como Angular, React o Vue, para crear estilos personalizados.

Tiene una plataforma de BI integrada sin problemas llamada wyn, con tableros interactivos, herramientas de programación y distribución dentro de cualquier aplicación interna o comercial.

La plataforma de BI integrada de GrapeCity ofrece una exploración visual de datos de alta velocidad ilimitada, permitiendo que el usuario común se convierta en impulsado por datos para informar fácilmente soluciones con datos extensos utilizando el informe ad hoc de BI y tableros interactivos.

GcExcel .NET es compatible con una variedad de plataformas, incluidas .NET Framework, .NET Core y Mono, lo que lo convierte en la elección ideal para todas sus necesidades de hojas de cálculo.

Lo mejor de GcExcel .NET es que su API basada en interfaces está modelada en torno al paradigma de objetos de documentos de Excel. Como resultado, los usuarios pueden importar, calcular, consultar, producir y exportar cualquier escenario de hoja de cálculo en cualquier momento. Además, informes completos, ordenar y filtrar tablas, ordenar y filtrar tablas dinámicas, agregar gráficos, minigráficos, formatos condicionales e informes de tablero, entre otras cosas, se pueden referenciar en las hojas de cálculo importadas o generadas.

¿Qué te ofrece GrapeCity Documents for Excel?

  • Permite la creación, manipulación y serialización de hojas de cálculo en el servidor.
  • Baja huella de memoria.
  • Realiza cálculos complejos utilizando el potente motor de cálculo.
  • Documento de alta velocidad intuitivo; inteligencia de negocios integrada.
  • Proporciona soluciones de informes completas.
  • Te da control total de tus documentos a alta velocidad.
  • Genera salidas en una variedad de formatos, incluidos .xlsx y ssjson.
  • Soporte para .NET Framework, .NET Core y Mono en varias plataformas.
  • Compatible con WinForms, WPF, ASP.NET y otros entornos.

GrapeCity Excel: características destacadas

La última versión 14.1 tiene muchas características nuevas y emocionantes.

  • Arquitectura API de hoja de cálculo ligera para una eficiencia mejorada

GcExcel .NET permite a los usuarios ahorrar una cantidad considerable de tiempo, memoria de almacenamiento y esfuerzo al mejorar la eficiencia general con su arquitectura API ligera que se puede utilizar para generar, cargar, editar, guardar y convertir hojas de cálculo.

  • Sin dependencia de MS Excel

Para trabajar con GcExcel .NET, los usuarios no necesitan instalar la Suite de MS Office ni acceder a MS Excel en sus sistemas.

  • Crea una experiencia interactiva con SpreadJS DSheets

GcExcel .NET se puede utilizar con hojas de cálculo para una experiencia completamente interactiva y fácil de usar.

  • Despliega aplicaciones con hojas de cálculo de Excel en la nube

Con GcExcel .NET, puedes aplicar implementaciones basadas en la nube y desplegar tus aplicaciones en Azure y AWS Lambda.

  • Formas e Imágenes

Con la API de hoja de cálculo, puedes insertar y personalizar formas e imágenes en las celdas de una hoja de trabajo, aplicar formato, relleno degradado, configurar texto, insertar hipervínculos, establecer puntos de ajuste de las formas, agrupar/desagruparlas en una hoja de trabajo y determinar la posición y tamaño de una imagen.

¿Qué es IronXL?

IronXL es una biblioteca C# que facilita la lectura y edición de documentos de Microsoft Excel. IronXL Excel es una biblioteca de software .NET que puede leer una variedad de formatos de hoja de cálculo. No necesita la instalación de Microsoft Excel ni depende de Interop.

IronXL es una API de C# fácil de usar que te permite leer, editar y generar archivos de Excel en .NET a una velocidad vertiginosa. .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS y Azure son compatibles con IronXL.

IronXL es una biblioteca de hojas de cálculo de Excel en C# para .NET Core y .NET Framework.

Conjunto de características de IronXL

  • Cargar, Leer y Editar Datos — desde XLS/XLSX/CSV/TSV
  • Guardar y Exportar — a XLS/XLSX/CSV/TSV/JSON
  • Objetos System.Data — Trabaja con hojas de cálculo de Excel como objetos System.Data.DataSet y System.Data.DataTable.
  • Fórmulas — trabaja con fórmulas de Excel. Las fórmulas se recalculan cada vez que se edita una hoja.
  • Rangos — Sintaxis fácil de usar WorkSheet ["A1:B10"]. Combina y crea rangos de manera intuitiva.
  • Ordenación — Ordena rangos, columnas y filas.
  • Estilización — Estilos visuales de celdas, fuente, tamaño, patrón de fondo, borde, alineación y formatos numéricos.

Instalación de GrapeCity Documents para Excel

Para utilizar GcExcel .NET en una aplicación .NET Core, ASP.NET Core o .NET Framework (cualquier destino que soporte .NET Standard 2.0), instala los paquetes NuGet en tu aplicación siguiendo los siguientes pasos:

Para encontrar e instalar el Paquete NuGet GrapeCity.Documents.Excel:

  1. Selecciona Administrar Paquetes NuGet en el menú contextual de dependencias o de un proyecto en el explorador de soluciones.
  2. Selecciona nuget.org en el desplegable de Fuente del paquete en la pestaña Explorar.
  3. En la pestaña Explorar, busca el paquete "GrapeCity.Documents.Excel" escribiendo "grapecity.documents" o "GrapeCity.Documents" en el cuadro de búsqueda en la parte superior.
Cuadro de diálogo del Administrador de paquetes NuGet
  1. Haz clic en Instalar para instalar el paquete GrapeCity.Documents.Excel y sus dependencias en el proyecto. Cuando la instalación esté completa, asegúrate de verificar la carpeta NuGet en tu explorador de soluciones y confirmar si el paquete GrapeCity.Documents.Excel se ha agregado a las dependencias de tu proyecto.
Carpeta NuGet

Instalación de la biblioteca IronXL C

Puedes descargar e instalar la biblioteca IronXL utilizando los siguientes métodos:

  • Usar Visual Studio con paquetes NuGet.
  • Descargar el Paquete NuGet directamente.
  • Instalar manualmente con el DLL.

Echemos un vistazo más de cerca a cada uno.

Uso de Visual Studio con paquetes NuGet

Visual Studio proporciona el Administrador de Paquetes NuGet para instalar paquetes NuGet en tus proyectos. Puedes acceder a él a través del menú Proyecto, o haciendo clic derecho en tu proyecto en el Explorador de Soluciones.

Seleccione Administrar paquete NuGet
  • A continuación, desde la pestaña Explorar -> busca IronXL.Excel -> Instalar
Buscar IronXL
  • Y hemos terminado.
Grapecity Excel Viewer Alternatives 5 related to Uso de Visual Studio con paquetes NuGet

Uso de la consola del administrador de paquetes NuGet

Otra forma de descargar e instalar la biblioteca C# Microsoft.Office.Interop.Excel es seguir los siguientes pasos para instalar el paquete NuGet a través del Símbolo del sistema de desarrollo.

  • Abre el Símbolo del sistema del desarrollador, generalmente encontrado en la carpeta de Visual Studio.
  • Escribe el siguiente comando:
Install-Package Microsoft.Office.Interop.Excel
  • Presiona Enter.
  • Esto descargará e instalará el paquete.
  • Recarga tu proyecto de Visual Studio y comienza a usarlo.

Añadir directivas using necesarias

  1. En el Explorador de Soluciones, haz clic derecho en el archivo Program.cs y luego haz clic en Ver Código.
  2. Añade las siguientes directivas de uso en la parte superior del archivo de código:
using Excel = Microsoft.Office.Interop.Excel;
using Excel = Microsoft.Office.Interop.Excel;
Imports Excel = Microsoft.Office.Interop.Excel
$vbLabelText   $csharpLabel

Creación de libros y hojas de cálculo de Excel

Un libro de trabajo es un archivo de Excel que contiene muchas filas y columnas de hojas de trabajo. La capacidad de crear un nuevo libro de trabajo y hojas de Excel está disponible en ambas bibliotecas. Echemos un vistazo paso a paso al código.

Creación de archivos Excel con IronXL

No podría ser más fácil crear un nuevo libro de Excel usando IronXL. ¡Solo una línea de código! Sí, de verdad. Añade el siguiente código a tu función de vacío estática principal en el archivo Program.cs:

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
$vbLabelText   $csharpLabel

Con IronXL se pueden crear tanto formatos de archivo XLS (versión anterior de archivos de Excel) como XLSX (versión actual y más reciente).

Y, es aún más fácil crear una Hoja de Trabajo predeterminada:

var worksheet = workbook.CreateWorkSheet("IronXL Features");
var worksheet = workbook.CreateWorkSheet("IronXL Features");
Dim worksheet = workbook.CreateWorkSheet("IronXL Features")
$vbLabelText   $csharpLabel

Ahora puedes utilizar la variable de la hoja de trabajo para establecer valores de celda y hacer prácticamente cualquier cosa que pueda hacer un archivo de Excel.

Creación de archivos de Excel mediante una API de Excel del lado del servidor GrapeCity Excel

GrapeCity Documents para Excel (o GcExcel) es una API de Excel del lado del servidor que te permite crear, cargar, guardar, convertir, calcular, formatear, analizar y exportar hojas de cálculo en cualquier aplicación .NET Standard. GcExcel puede desplegarse en Azure sin ninguna dependencia de Excel gracias al soporte completo de .NET5 para Windows, Linux y Mac.

GcExcel te permite crear y generar hojas de cálculo de Excel del lado del servidor sin tener que usar MS Excel.

  • Crea un libro de trabajo con GcExcel en una función.
  • Regresa al cliente después de convertir el libro de trabajo a JSON.

En este ejemplo, solo vamos a hacer una hoja de cálculo BidTracker.xlsx. Esta muestra muestra funcionalidad adicional del lado del servidor que puede programarse con GcExcel.

[HttpGet("{caseName}")]
public IActionResult GetSSJsonFromUseCase(string caseName)
{
    Workbook workbook = CreateWorkbookByCaseName(caseName);
    var ssjson = workbook.ToJson();
    return Ok(ssjson);
}

private Workbook CreateWorkbookByCaseName(string caseName)
{
    switch (caseName)
    {
        case "BidTracker":
            return GetBidTracker();
        default:
            break;
    }

    return new Workbook();
}
[HttpGet("{caseName}")]
public IActionResult GetSSJsonFromUseCase(string caseName)
{
    Workbook workbook = CreateWorkbookByCaseName(caseName);
    var ssjson = workbook.ToJson();
    return Ok(ssjson);
}

private Workbook CreateWorkbookByCaseName(string caseName)
{
    switch (caseName)
    {
        case "BidTracker":
            return GetBidTracker();
        default:
            break;
    }

    return new Workbook();
}
<HttpGet("{caseName}")>
Public Function GetSSJsonFromUseCase(ByVal caseName As String) As IActionResult
	Dim workbook As Workbook = CreateWorkbookByCaseName(caseName)
	Dim ssjson = workbook.ToJson()
	Return Ok(ssjson)
End Function

Private Function CreateWorkbookByCaseName(ByVal caseName As String) As Workbook
	Select Case caseName
		Case "BidTracker"
			Return GetBidTracker()
		Case Else
	End Select

	Return New Workbook()
End Function
$vbLabelText   $csharpLabel

Editar archivos de Excel

Los desarrolladores deben ser cuidadosos cuando comienzan a modificar y editar archivos de Excel en C# porque puede ser fácil que un error cambie todo el documento. Poder confiar en líneas de código simples y eficientes ayuda a reducir el riesgo de errores, y hace que sea más fácil actualizar o eliminar archivos de Excel de manera programada. Hoy recorreremos los procedimientos necesarios para editar archivos de Excel en C# de manera precisa y rápida, utilizando funciones probadas.

Editar archivos de Excel con GrapeCity Excel

Comencemos a usar GcExcel para abordar estos problemas.

Te entregan una hoja de cálculo que se ve así:

Grapecity Excel Viewer Alternatives 6 related to Editar archivos de Excel con GrapeCity Excel

Primero, querremos formatear la hoja:

  • Cambia las propiedades de la fuente del título de la hoja y la celda de Ingresos Totales.
  • Cambia los estilos de tabla, columna de tabla y celda.

Echemos un vistazo a cómo lograr esto usando GcExcel.

Paso 1: Cargar una hoja de cálculo de Excel existente

Escribe el siguiente código para cargar una hoja de cálculo existente en tu Libro de Trabajo de GcExcel:

Workbook workbook = new Workbook();
workbook.Open("EventBudget.xlsx");
Workbook workbook = new Workbook();
workbook.Open("EventBudget.xlsx");
Dim workbook As New Workbook()
workbook.Open("EventBudget.xlsx")
$vbLabelText   $csharpLabel

Paso 2: Obtener la hoja de trabajo que deseas modificar

IWorksheet worksheet = workbook.ActiveWorksheet;
IWorksheet worksheet = workbook.ActiveWorksheet;
Dim worksheet As IWorksheet = workbook.ActiveWorksheet
$vbLabelText   $csharpLabel

Paso 3: Modificar las propiedades de la fuente de los títulos

Cambiar las propiedades de la fuente de las celdas B2 (tamaño de fuente) y E4 (establecer en negrita):

// Change range B2's font size.
worksheet.GetRange("B2").Font.Size = 22;

// Change range E4's font style to bold.
worksheet.GetRange("E4").Font.Bold = true;
// Change range B2's font size.
worksheet.GetRange("B2").Font.Size = 22;

// Change range E4's font style to bold.
worksheet.GetRange("E4").Font.Bold = true;
' Change range B2's font size.
worksheet.GetRange("B2").Font.Size = 22

' Change range E4's font style to bold.
worksheet.GetRange("E4").Font.Bold = True
$vbLabelText   $csharpLabel

Paso 4: Modificar el estilo de la tabla

Establecer estilos de las cuatro tablas a un estilo incorporado.

worksheet.Tables["tblAdmissions"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblAds"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblVendors"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblItems"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblAdmissions"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblAds"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblVendors"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblItems"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables("tblAdmissions").TableStyle = workbook.TableStyles("TableStyleLight10")
worksheet.Tables("tblAds").TableStyle = workbook.TableStyles("TableStyleLight10")
worksheet.Tables("tblVendors").TableStyle = workbook.TableStyles("TableStyleLight10")
worksheet.Tables("tblItems").TableStyle = workbook.TableStyles("TableStyleLight10")
$vbLabelText   $csharpLabel

Paso 5: Modificar estilo de rango de celdas

Modificar el estilo de celda de las celdas de Ingresos Totales. La propiedad Interior de un rango puede ayudarte a establecer las propiedades ThemeColor y TintAndShade. También se puede cambiar la fuente de todo el rango utilizando la propiedad Font. Además, este código puede establecer los bordes de un rango de celdas.

Dado que la hoja de cálculo muestra los datos del presupuesto, establece el formato numérico de un rango de celdas a moneda.

// Modify range F4:G5's cell style.
worksheet.GetRange("F4:G5").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F4:G5").Interior.TintAndShade = -0.15;
worksheet.GetRange("F4:G5").Font.ThemeFont = ThemeFont.Major;
worksheet.GetRange("F4:G5").Font.Size = 12;
worksheet.GetRange("F4:G5").Borders[BordersIndex.InsideHorizontal].LineStyle = BorderLineStyle.None;
worksheet.GetRange("F5:G5").NumberFormat = "$#,##0.00";
// Modify range F4:G5's cell style.
worksheet.GetRange("F4:G5").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F4:G5").Interior.TintAndShade = -0.15;
worksheet.GetRange("F4:G5").Font.ThemeFont = ThemeFont.Major;
worksheet.GetRange("F4:G5").Font.Size = 12;
worksheet.GetRange("F4:G5").Borders[BordersIndex.InsideHorizontal].LineStyle = BorderLineStyle.None;
worksheet.GetRange("F5:G5").NumberFormat = "$#,##0.00";
' Modify range F4:G5's cell style.
worksheet.GetRange("F4:G5").Interior.ThemeColor = ThemeColor.Light1
worksheet.GetRange("F4:G5").Interior.TintAndShade = -0.15
worksheet.GetRange("F4:G5").Font.ThemeFont = ThemeFont.Major
worksheet.GetRange("F4:G5").Font.Size = 12
worksheet.GetRange("F4:G5").Borders(BordersIndex.InsideHorizontal).LineStyle = BorderLineStyle.None
worksheet.GetRange("F5:G5").NumberFormat = "$#,##0.00"
$vbLabelText   $csharpLabel

Paso 6: Modificar estilos de columna de tabla

Como los rangos de columna de tabla son diferentes, establece las propiedades ThemeColor, TintAndShade y NumberFormat en un rango de columna diferente de la tabla.

worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.TintAndShade = -0.15;
worksheet.GetRange("E8:G11, E15:G18, E22:G25, E29:G33").NumberFormat = "$#,##0.00";
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.TintAndShade = -0.15;
worksheet.GetRange("E8:G11, E15:G18, E22:G25, E29:G33").NumberFormat = "$#,##0.00";
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.ThemeColor = ThemeColor.Light1
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.TintAndShade = -0.15
worksheet.GetRange("E8:G11, E15:G18, E22:G25, E29:G33").NumberFormat = "$#,##0.00"
$vbLabelText   $csharpLabel

Paso 7: Guardar el archivo de Excel

// Save to an Excel file
workbook.Save("EventBudget.xlsx");
// Save to an Excel file
workbook.Save("EventBudget.xlsx");
' Save to an Excel file
workbook.Save("EventBudget.xlsx")
$vbLabelText   $csharpLabel

¡Felicitaciones! Has cambiado completamente el formato del documento. Ejecuta la aplicación y tu hoja de cálculo de Excel se verá así:

Crear, modificar y guardar hojas de cálculo de Excel en aplicaciones Java

Editar archivos de Excel con IronXL

Una vez que hayas instalado IronXL, abordemos el proceso de edición de archivos de Excel con él.

Editar los Valores de Celdas Específicas

Primero, veremos cómo cambiar los valores de ciertas celdas en una hoja de cálculo de Excel.

Hacemos esto importando la hoja de cálculo de Excel que debe cambiarse y accediendo a su Hoja de Trabajo. Luego, podemos hacer los cambios como se indica a continuación.

using IronXL;

static void Main(string[] args)
{
    // Import Excel Spreadsheet
    WorkBook wb = WorkBook.Load("sample.xlsx");

    // Access specific worksheet
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Access specific cell and modify its value
    ws.Rows[3].Columns[1].Value = "New Value";

    // Save changes
    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    // Import Excel Spreadsheet
    WorkBook wb = WorkBook.Load("sample.xlsx");

    // Access specific worksheet
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Access specific cell and modify its value
    ws.Rows[3].Columns[1].Value = "New Value";

    // Save changes
    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	' Import Excel Spreadsheet
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")

	' Access specific worksheet
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	' Access specific cell and modify its value
	ws.Rows(3).Columns(1).Value = "New Value"

	' Save changes
	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

Aquí hay capturas de pantalla antes y después de la muestra de hoja de cálculo sample.xlsx:

Antes
Después

Podemos ver lo simple que es modificar el valor de la hoja de cálculo de Excel.

Si es necesario, también hay una forma alternativa de editar el valor de la celda específica por dirección de celda:

// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
' Alternative way to access specific cell and apply changes
ws("B4").Value = "New Value"
$vbLabelText   $csharpLabel

Editar Valores de Fila Completa

Es bastante simple editar valores de fila completa de una hoja de cálculo de Excel con un valor estático.

using IronXL;

static void Main(string[] args)
{    
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full row value
    ws.Rows[3].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{    
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full row value
    ws.Rows[3].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	' Set full row value
	ws.Rows(3).Value = "New Value"

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

Ve las capturas de pantalla de la muestra sample.xlsx a continuación:

Antes
Después

Para esto, también podemos editar el valor de un rango específico de la fila usando la función de rango:

// Modify specific range within a row
ws["A3:E3"].Value = "New Value";
// Modify specific range within a row
ws["A3:E3"].Value = "New Value";
' Modify specific range within a row
ws("A3:E3").Value = "New Value"
$vbLabelText   $csharpLabel

Editar Valores de Columna Completa

De la misma manera que arriba, podemos editar fácilmente columnas completas de la hoja de cálculo de Excel con un solo valor.

using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full column value
    ws.Columns[1].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full column value
    ws.Columns[1].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	' Set full column value
	ws.Columns(1).Value = "New Value"

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

Esto producirá nuestra hoja de cálculo sample.xlsx como tal:

Después

Editar Filas Completas con Valores Dinámicos

Usando IronXL, también es posible editar filas específicas con valores dinámicos. Esto significa que podemos editar una fila completa asignando valores dinámicos a cada celda. Echemos un vistazo al ejemplo:

using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Columns.Count(); i++)
    {
        // Set cell value dynamically based on column index
        ws.Rows[3].Columns[i].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Columns.Count(); i++)
    {
        // Set cell value dynamically based on column index
        ws.Rows[3].Columns[i].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	For i As Integer = 0 To ws.Columns.Count() - 1
		' Set cell value dynamically based on column index
		ws.Rows(3).Columns(i).Value = "New Value " & i.ToString()
	Next i

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

En la tabla a continuación, podemos ver las capturas de pantalla de la hoja de cálculo sample.xlsx de este resultado:

Antes
Después

Editar Columnas Completas con Valores Dinámicos

También es fácil editar columnas específicas con valores dinámicos.

using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Rows.Count(); i++)
    {
        // Skip header row
        if (i == 0) continue;

        // Set cell value dynamically based on row index
        ws.Rows[i].Columns[1].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Rows.Count(); i++)
    {
        // Skip header row
        if (i == 0) continue;

        // Set cell value dynamically based on row index
        ws.Rows[i].Columns[1].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	For i As Integer = 0 To ws.Rows.Count() - 1
		' Skip header row
		If i = 0 Then
			Continue For
		End If

		' Set cell value dynamically based on row index
		ws.Rows(i).Columns(1).Value = "New Value " & i.ToString()
	Next i

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

Con los resultados de la tabla de sample.xlsx a continuación:

Antes
Después

Convertir hojas de cálculo a PDF, XML y JSON

¿Estás usando una API de Excel para generar hojas de cálculo en aplicaciones Java? Cuando trabajas con datos, habrá momentos en los que no desees almacenar tus datos en una hoja de cálculo de Excel. En su lugar, necesitas un PDF.

Existen varias razones por las que no querrías almacenar datos en una hoja de cálculo de Excel:

  • Necesitas preservación a largo plazo.
  • No tienes Microsoft Office instalado en tu sistema, pero aún quieres imprimir o distribuir tus hojas de cálculo de Excel.
  • Necesitas compartir tu hoja de cálculo y mantener tu formato. Necesitas que tus hojas de cálculo de Excel luzcan exactamente iguales cuando se abran en diferentes sistemas.

Usar GrapeCity para convertir hojas de cálculo a PDF

GrapeCity Documents para Excel, Edición Java (GcExcel Java) es una API de hoja de cálculo de alta velocidad y pequeño tamaño que no requiere dependencias en Excel. Con soporte total en Windows, Linux y Mac, puedes generar, cargar, modificar y guardar hojas de cálculo, luego convertirlas a PDF.

Aquí están los tres pasos para convertir hojas de cálculo a PDF en aplicaciones Java:

  1. Cargar una hoja de cálculo de Excel existente en un libro de trabajo GcExcel
  2. Añadir PDFBox como una librería
  3. Convertir la hoja de cálculo a PDF

Paso 1: Cargar una hoja de cálculo de Excel existente en un libro de trabajo GcExcel

Crea un objeto de libro de trabajo GcExcel y carga una hoja de cálculo existente.

Utilice una API de Excel para convertir hojas de cálculo a archivos PDF en aplicaciones Java
Workbook workbook = new Workbook();
workbook.Open("FinancialKPI.xlsx");
Workbook workbook = new Workbook();
workbook.Open("FinancialKPI.xlsx");
Dim workbook As New Workbook()
workbook.Open("FinancialKPI.xlsx")
$vbLabelText   $csharpLabel

Paso 2: Añadir PDFBox como librería

GcExcel Java referencia a PDFBox para convertir hojas de cálculo en PDF. PDFBox también depende de los paquetes FontBox y Commons Logging.

Siguiendo estos pasos podrás añadir estos archivos JAR como una librería a tu proyecto:

  1. Descarga el paquete — Archivos JAR PDFBox, FontBox, Commons Loggings.
  2. Bajo la carpeta 'src' en el proyecto, añade una carpeta 'libs'.
  3. Copia los tres archivos JAR a la carpeta 'libs'.
  4. Haz clic derecho en la carpeta 'libs' y elige la opción 'Añadir como librería'.
  5. Presiona OK.

Nota: Los pasos anteriores serían necesarios solo si el proyecto es un proyecto consola Java original. Si el proyecto es un proyecto Maven o Gradle, solo agregar la dependencia de GcExcel Java sería suficiente. Maven o Gradle descargarán e instalarán automáticamente todos los JARs dependientes.

En algunas versiones de Maven, puedes obtener un error de dependencia al añadir los archivos JAR anteriores. Para resolver eso, por favor añade el siguiente nodo antes de las dependencias en pom.xml:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
        </plugin>
    </plugins>
</build>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
        </plugin>
    </plugins>
</build>
XML

Paso 3: Convertir la hoja de cálculo a PDF

Guarda la hoja de cálculo como PDF utilizando el siguiente código:

workbook.Save("FinancialKPI.pdf", SaveFileFormat.Pdf);
workbook.Save("FinancialKPI.pdf", SaveFileFormat.Pdf);
workbook.Save("FinancialKPI.pdf", SaveFileFormat.Pdf)
$vbLabelText   $csharpLabel

Tu PDF se verá así:

Utilice una API de Excel para convertir hojas de cálculo a archivos PDF en aplicaciones Java
Utilice una API de Excel para convertir hojas de cálculo a archivos PDF en aplicaciones Java

Uso de IronXL para convertir hojas de cálculo a XML y JSON

El siguiente código demuestra cómo exportar un archivo de Excel a un archivo XML o JSON con IronXL. Agrega el siguiente código:

Incluye el espacio de nombres:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

Añade las siguientes líneas:

private void ExportToXmlJson()
{        
    WorkBook workbook = WorkBook.Load("IronXL_Output.xlsx");

    // Export to JSON
    workbook.SaveAsJson("IronXL_Output.json");

    // Export to XML
    workbook.SaveAsXml("IronXL_Output.xml");
}
private void ExportToXmlJson()
{        
    WorkBook workbook = WorkBook.Load("IronXL_Output.xlsx");

    // Export to JSON
    workbook.SaveAsJson("IronXL_Output.json");

    // Export to XML
    workbook.SaveAsXml("IronXL_Output.xml");
}
Private Sub ExportToXmlJson()
	Dim workbook As WorkBook = WorkBook.Load("IronXL_Output.xlsx")

	' Export to JSON
	workbook.SaveAsJson("IronXL_Output.json")

	' Export to XML
	workbook.SaveAsXml("IronXL_Output.xml")
End Sub
$vbLabelText   $csharpLabel

Aquí, se carga un objeto de Libro de Excel existente y luego se exporta a los formatos JSON y XML.

Licencias y precios

Licencias y precios de IronXL

IronXL es una biblioteca de Excel en C# comercial abiertamente. Es gratis para desarrollo y siempre se puede obtener una licencia para despliegue comercial. Las licencias se ofrecen para uso de un solo proyecto, un solo desarrollador, agencias y organizaciones multinacionales, así como para distribución SaaS y OEM. Todas las licencias contienen una garantía de devolución de dinero de 30 días, un año de soporte y actualizaciones de software, validez para dev/staging/producción, y también una licencia permanente (una compra única). El paquete Lite empieza a partir de $799.

Licencias y precios de GrapeCity

Por otro lado, GrapeCity Excel también es una biblioteca comercial de Excel; no ofrece ningún servicio gratuito. El precio de GrapeCity Documents comienza en la tarifa plana de $999 por año. También ofrecen una prueba gratuita. Sus licencias se desglosan en cuatro paquetes:

Licencia de desarrollador (1 desarrollador, 1 ubicación)

Un (1) desarrollador puede usar GrapeCity Documents en una (1) ubicación con una Licencia de Desarrollador (definida como una dirección física o edificio de oficinas). Múltiples sitios se consideran una implementación en la nube; ve Licencias Ilimitadas para obtener más información.

Licencia ilimitada para desarrolladores (1 desarrollador, ubicaciones ilimitadas o nube)

Un (1) desarrollador puede usar GrapeCity Documents en un número ilimitado de ubicaciones (especificado como una dirección física o edificio de oficinas) o en la nube con una Licencia de Desarrollador Ilimitada.

Licencia ilimitada para equipos (2 a 5 desarrolladores, ubicaciones ilimitadas o nube)

GrapeCity Documents pueden ser utilizados hasta por cinco (5) desarrolladores en un número infinito de ubicaciones (especificadas como una dirección física o edificio de oficinas) o en la nube con una Licencia de Equipo Ilimitada.

Licencia OEM y SaaS (más de 6 desarrolladores)

Esto se puede configurar contactando al soporte de ventas.

Conclusión

En aplicaciones y sitios web .NET, IronXL para .NET permite a los desarrolladores leer, producir y modificar Excel (y otros archivos de hojas de cálculo). XLS/XLSX/CSV/TSV se pueden leer y editar, y las exportaciones se pueden guardar en XLS/XLSX/CSV/TSV/JSON. Es compatible con .NET Framework, .NET Core y Azure. All of this is accomplished without the need for additional dependencies or the installation of Microsoft Office. If you've ever felt that Excel is getting in the way of your .NET office management skills, IronXL is here to help. This is why we built the C# Excel library, which allows you to read, generate, and modify Excel files in .NET apps and websites as a successful developer.

GcExcel (GrapeCity Documents para Excel) es una API de hoja de cálculo rápida y de pequeño tamaño que no requiere Excel. Puedes generar, cargar, cambiar y convertir hojas de cálculo en .NET Framework, .NET Core, Mono y Xamarin con soporte completo de .NET Standard 2.0. Esta API de hoja de cálculo se puede utilizar para construir aplicaciones para la nube, Windows, Mac y Linux. Nunca tendrás que sacrificar el diseño o los requisitos debido a su sofisticado motor de cálculo y amplia gama de características.

La licencia de GrapeCity Excel comienza en $995 por desarrollador, en comparación con $799 para IronXL, que viene con la ventaja de un plan de multiusuario y sin regalías ilimitado, lo que se vuelve más barato cuando compras para un gran número de desarrolladores en lugar de GcExcel, que tiene un máximo de 6 usuarios en sus planes ultra multiusuario.

IronXL es preferido sobre otras alternativas de C# debido a su eficiencia al tratar con documentos de Excel. IronXL también se destaca debido a sus métodos operativos que fomentan líneas de código más cortas.

Iron Software está ofreciendo actualmente a todos sus clientes y usuarios la opción de obtener toda la suite de Iron Software en dos clics: por el precio de solo dos paquetes de la suite de Iron Software, puedes obtener en su lugar los cinco paquetes junto con soporte ininterrumpido.

Por favor notaGrapeCity Documents for Excel es una marca registrada de su respectivo propietario. Este sitio no está afiliado, respaldado ni patrocinado por GrapeCity Documents para Excel. Todos los nombres de producto, logotipos y marcas son propiedad de sus respectivos dueños. Las comparaciones son sólo para fines informativos y reflejan información disponible públicamente al momento de escribir.

Preguntas Frecuentes

¿Cuáles son las alternativas al Excel Viewer de GrapeCity para desarrolladores C#?

IronXL es una alternativa popular al Excel Viewer de GrapeCity para desarrolladores C#. Simplifica la lectura y edición de documentos Excel sin requerir Microsoft Excel, soporta varios formatos y plataformas, y ofrece características eficientes de manejo de datos.

¿Cómo puedo leer y editar documentos Excel en C# sin instalar Microsoft Excel?

Puedes usar IronXL para leer y editar documentos Excel en C# sin necesitar Microsoft Excel. IronXL soporta múltiples formatos de hoja de cálculo y puede manejar operaciones eficientemente en diferentes plataformas.

¿Qué plataformas son soportadas por IronXL para operaciones Excel?

IronXL soporta .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS, y Azure, haciéndolo versátil para varios entornos de desarrollo.

¿Cómo maneja IronXL las fórmulas de Excel?

IronXL soporta fórmulas de Excel asegurando que se recalculen cada vez que se edita una hoja, permitiendo una manipulación de datos dinámica y resultados de datos precisos.

¿Puedo exportar datos de Excel a JSON o XML usando IronXL?

Sí, IronXL ofrece funcionalidad para exportar datos de Excel a formatos como JSON y XML, haciendo conveniente las tareas de integración y transformación de datos.

¿Cuáles son las opciones de licencia para IronXL?

IronXL ofrece opciones de licencia libres de regalías, enfocándose en planes multiusuario, proporcionando soluciones rentables para equipos y diversas aplicaciones.

¿Cuáles son las características destacadas de GrapeCity Documents para Excel?

GrapeCity Documents para Excel ofrece una API ligera, procesamiento de datos de alta velocidad y compatibilidad con múltiples formatos como .xlsx y ssjson, junto con integración perfecta con herramientas de inteligencia de negocios.

¿Cómo difieren IronXL y GrapeCity Documents para Excel en precios?

GrapeCity Documents para Excel comienza en $999 anuales, mientras que IronXL ofrece opciones de licencia más flexibles y rentables, particularmente beneficiosas para entornos multiusuario.

¿Por qué un desarrollador podría elegir IronXL sobre GrapeCity para operaciones Excel?

Los desarrolladores pueden elegir IronXL sobre GrapeCity por su simplicidad, eficiencia y facilidad operativa en el manejo de documentos Excel, especialmente para aplicaciones que requieren un procesamiento de documentos rápido y sencillo.

Jordi Bardia
Ingeniero de Software
Jordi es más competente en Python, C# y C++. Cuando no está aprovechando sus habilidades en Iron Software, está programando juegos. Compartiendo responsabilidades para pruebas de productos, desarrollo de productos e investigación, Jordi agrega un valor inmenso a la mejora continua del producto. La experiencia variada lo mantiene ...
Leer más