Biblioteca de Excel .NET (Tutorial para desarrolladores)
IronXL le permite crear, leer y exportar archivos de Excel en C#/.NET con solo unas pocas líneas de código, sin necesidad de instalaciones de Microsoft Office, lo que lo hace perfecto para empresas emergentes de rápido crecimiento que necesitan capacidades rápidas de integración con Excel.
¿Qué hace que IronXL sea la mejor biblioteca de Excel para el desarrollo .NET?
En este artículo, exploraremos IronXL, una biblioteca de Excel que simplifica el trabajo con documentos de Microsoft Excel mediante programación en .NET. Crearemos un entorno de hoja de cálculo de Excel para leer hojas de cálculo de Excel , escribir tablas de Excel y exportar archivos de hojas de cálculo a CSV .
¿Por qué elegir IronXL en lugar de Microsoft.Office.Interop?
Los documentos creados en Microsoft Excel se pueden leer y convertir a archivos CSV utilizando la biblioteca C# IronXL .NET Excel. IronXL es una biblioteca de software .NET independiente que no necesita tener instalado Microsoft Office, Microsoft.Office.Interop.Excel o Excel Interop. Puede leer varios formatos de hojas de cálculo y no es solo una biblioteca estática.
La sencilla API C# de IronXL facilita la lectura de múltiples hojas de trabajo , la modificación y la generación de hojas de cálculo de Excel en un entorno .NET. Es totalmente compatible con Xamarin, Linux , macOS , Azure , aplicaciones .NET Core y .NET Framework.
Para los fundadores de empresas emergentes que necesitan una implementación rápida, IronXL elimina la dependencia de las instalaciones de Microsoft Office en servidores de desarrollo y producción, lo que reduce significativamente la complejidad de la infraestructura y los costos de licencia. El soporte multiplataforma de la biblioteca garantiza que sus capacidades de procesamiento de Excel funcionen sin problemas, ya sea que esté implementando en contenedores Linux, Azure Functions o servidores Windows tradicionales.
¿Qué plataformas y formatos admite IronXL?
- Compatible con .NET Core y .NET Framework
- Admite aplicaciones web, formularios de Windows y aplicaciones de consola.
- Funciona con Linux , macOS y Windows
- Proporciona acceso rápido y sencillo a archivos de Excel
- Lee varios tipos de archivos de Excel : XLSX, CSV, XLS, XLST, TSV, XLSM y más
- Realiza cálculos en hojas de cálculo de Excel
- Admite varios tipos de datos : texto, números enteros, fechas, monedas, fórmulas y porcentajes.
- Maneja múltiples formatos de valores para columnas de Excel
La amplia compatibilidad de formatos significa que puede convertir entre diferentes tipos de archivos de hojas de cálculo sin esfuerzo, ya sea que esté importando datos de Excel desde cargas de clientes o exportando a diferentes formatos para varias partes interesadas.
¿Cómo configuro un proyecto .NET para utilizar IronXL?
Las siguientes secciones le muestran lo sencillo que es crear y leer archivos Excel con la biblioteca IronXL.
¿Cuáles son los pasos para crear un nuevo proyecto de consola?
Paso 1: Inicie un nuevo proyecto para crear archivos de Excel.
Después de iniciar Visual Studio, seleccione 'Nuevo Proyecto' en el menú 'Archivo'.
En el cuadro de diálogo resultante, seleccione las plantillas de Proyecto .NET 'Aplicación de Consola', luego haga clic en 'Siguiente'.
Una vez que haya ingresado la ubicación del nuevo proyecto en el campo Ubicación, puede ingresar cualquier nombre de proyecto que elija. Haga clic en el botón Siguiente para continuar.
¿Qué versión de .NET Framework debo elegir?
Seleccione un .NET Framework utilizando la opción desplegable Framework. Aquí, estamos usando .NET 6.0, la versión con soporte a largo plazo. Luego presione Crear.
Ventana de configuración del proyecto de Visual Studio que muestra la configuración de la aplicación de consola con el marco .NET 6.0 LTS seleccionado y las opciones de plataforma para C#, Linux, macOS, Windows y desarrollo de bibliotecas de consola para Excel. Selección de Marco de Trabajo
Para entornos de inicio, elegir .NET 6.0 LTS garantiza estabilidad y soporte a largo plazo, lo que reduce la necesidad de actualizaciones del marco durante fases de crecimiento críticas. Esta versión también proporciona excelentes mejoras de rendimiento y es totalmente compatible con implementaciones de Docker y Azure Functions .
¿Cómo instalo IronXL a través del Administrador de paquetes NuGet?
Obtenga la biblioteca IronXL, que se requiere para la siguiente solución. Para hacer esto, ingrese el siguiente comando en la consola del Administrador de paquetes NuGet:
Install-Package IronXL.Excel
La consola del Administrador de paquetes de Visual Studio muestra la ejecución del comando 'PM> Install-Package IronXL.Excel' con confirmación de la instalación correcta de la biblioteca de Excel. Instalación de IronXL
Otra opción es usar el Administrador de Paquetes NuGet para buscar el paquete "IronXL". Luego, seleccione el paquete deseado para descargar de la lista de todos los paquetes NuGet relacionados con IronXL.
Ventana del Administrador de paquetes NuGet que muestra el paquete IronXL.Excel con la versión 2023.4.13 listo para instalar, con 386 000 descargas y el botón Instalar resaltado para facilitar la integración con la biblioteca de Excel. Administrador de Paquetes NuGet
El proceso de instalación es sencillo y se puede completar en menos de un minuto. Para los equipos que utilizan pipelines de CI/CD, IronXL se puede integrar fácilmente en compilaciones automatizadas. Consulta la página de licencias para conocer opciones de precios favorables para empresas emergentes y cómo aplicar claves de licencia en tu proceso de implementación.
¿Cómo creo archivos Excel usando IronXL en C#?
¡Con IronXL, puedes crear nuevos archivos Excel con solo unas pocas líneas de código! IronXL puede crear archivos tanto en XLS (formato Excel más antiguo) como en XLSX (formato actual) como se muestra en los ejemplos de código a continuación.
¿Cuál es el código mínimo para generar un nuevo libro de Excel?
using IronXL;
public class IronXLExample
{
public static void Main(string[] args)
{
// Create a new workbook
WorkBook workbook = WorkBook.Create();
// Create a new worksheet named "Sheet1"
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
// Set the value of cell A1
worksheet["A1"].Value = "test";
// Save the workbook to a file
workbook.SaveAs("sample1.xlsx");
}
}using IronXL;
public class IronXLExample
{
public static void Main(string[] args)
{
// Create a new workbook
WorkBook workbook = WorkBook.Create();
// Create a new worksheet named "Sheet1"
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
// Set the value of cell A1
worksheet["A1"].Value = "test";
// Save the workbook to a file
workbook.SaveAs("sample1.xlsx");
}
}El código anterior demuestra el uso del paquete IronXL para crear un nuevo libro y una nueva hoja de cálculo de Excel . El método WorkBook.Create() crea un nuevo libro de trabajo y luego la función CreateWorkSheet("Sheet1") crea una pestaña de hoja de trabajo con el nombre especificado. Los cambios se guardan en una ubicación especificada usando el método SaveAs.
Para escenarios más complejos, puede agregar varias hojas de trabajo , aplicar formato de celda , establecer formatos de datos de celda e incluso crear gráficos de Excel mediante programación:
// Create a workbook with multiple sheets and formatting
WorkBook workbook = WorkBook.Create();
WorkSheet salesSheet = workbook.CreateWorkSheet("Sales");
WorkSheet revenueSheet = workbook.CreateWorkSheet("Revenue");
// Add headers with formatting
salesSheet["A1"].Value = "Product";
salesSheet["B1"].Value = "Quantity";
salesSheet["C1"].Value = "Revenue";
// Apply bold formatting to headers
salesSheet["A1:C1"].Style.Font.Bold = true;
// Add data with number formatting
salesSheet["A2"].Value = "Widget A";
salesSheet["B2"].Value = 150;
salesSheet["C2"].Value = 4500.00;
salesSheet["C2"].FormatString = "$#,##0.00"; // Currency format
// Auto-size columns for better readability
salesSheet.AutoSizeColumn(0);
salesSheet.AutoSizeColumn(1);
salesSheet.AutoSizeColumn(2);
workbook.SaveAs("sales_report.xlsx");// Create a workbook with multiple sheets and formatting
WorkBook workbook = WorkBook.Create();
WorkSheet salesSheet = workbook.CreateWorkSheet("Sales");
WorkSheet revenueSheet = workbook.CreateWorkSheet("Revenue");
// Add headers with formatting
salesSheet["A1"].Value = "Product";
salesSheet["B1"].Value = "Quantity";
salesSheet["C1"].Value = "Revenue";
// Apply bold formatting to headers
salesSheet["A1:C1"].Style.Font.Bold = true;
// Add data with number formatting
salesSheet["A2"].Value = "Widget A";
salesSheet["B2"].Value = 150;
salesSheet["C2"].Value = 4500.00;
salesSheet["C2"].FormatString = "$#,##0.00"; // Currency format
// Auto-size columns for better readability
salesSheet.AutoSizeColumn(0);
salesSheet.AutoSizeColumn(1);
salesSheet.AutoSizeColumn(2);
workbook.SaveAs("sales_report.xlsx");¿Dónde puedo encontrar más ejemplos de creación de archivos Excel?
Para obtener más información sobre cómo crear archivos Excel, consulte este tutorial para crear uno en .NET . También puede explorar cómo trabajar con Excel en C# sin interoperabilidad y crear gráficos de Excel mediante programación .
¿Cómo leo datos de Excel y los exporto a diferentes formatos?
Exportar datos a formatos XLSX o XLS requiere solo unas pocas líneas de código. A continuación se muestra el código fuente que se puede utilizar para exportar datos de un archivo Excel a un formato tabular simple:
¿Qué código necesito para cargar y modificar archivos Excel existentes?
using IronXL;
public class ExcelReadExportExample
{
public static void Main(string[] args)
{
// Load an existing Excel file
var workbook = WorkBook.LoadExcel("Demo file.xlsx");
// Get a worksheet from the workbook
WorkSheet workSheet = workbook.GetWorkSheet("Sheet1");
// Read the value of cell A1
string addressVal = workSheet["A1"].ToString();
Console.WriteLine(addressVal);
// Modify the value of cell A2
workSheet["A2"].Value = "test";
// Save the workbook in multiple formats
workbook.SaveAs("export.xlsx");
// Or save as XLS
workbook.SaveAs("export.xls");
// Or save the specific worksheet as an XLS file
workbook.WorkSheets[0].SaveAs("export.xls");
}
}using IronXL;
public class ExcelReadExportExample
{
public static void Main(string[] args)
{
// Load an existing Excel file
var workbook = WorkBook.LoadExcel("Demo file.xlsx");
// Get a worksheet from the workbook
WorkSheet workSheet = workbook.GetWorkSheet("Sheet1");
// Read the value of cell A1
string addressVal = workSheet["A1"].ToString();
Console.WriteLine(addressVal);
// Modify the value of cell A2
workSheet["A2"].Value = "test";
// Save the workbook in multiple formats
workbook.SaveAs("export.xlsx");
// Or save as XLS
workbook.SaveAs("export.xls");
// Or save the specific worksheet as an XLS file
workbook.WorkSheets[0].SaveAs("export.xls");
}
}¿Cómo puedo acceder a las hojas de trabajo por nombre o índice?
En el ejemplo anterior, se carga un archivo de Excel existente utilizando el método LoadExcel, que toma el nombre del archivo y la ruta como argumento. El archivo se importa luego al objeto WorkBook. Las hojas de trabajo se cargan usando la función GetWorkSheet especificando el nombre de la hoja. El valor de una celda se puede leer especificando su dirección. El código también demuestra cómo modificar el valor de una hoja de trabajo y guardar el libro de trabajo en diferentes formatos de archivo utilizando el método SaveAs.
IronXL ofrece formas flexibles de seleccionar rangos , leer archivos CSV y trabajar con diversas estructuras de datos. A continuación se muestra un ejemplo ampliado que muestra diferentes formas de acceder y manipular datos de Excel:
// Load workbook from various sources
WorkBook workbook = WorkBook.Load("data.xlsx");
// Access worksheets in multiple ways
WorkSheet sheet1 = workbook.WorkSheets[0]; // By index
WorkSheet sheet2 = workbook.GetWorkSheet("Sheet2"); // By name
// Read data from ranges
var range = sheet1["A1:C10"];
foreach (var cell in range)
{
Console.WriteLine($"{cell.Address}: {cell.Value}");
}
// Convert to DataTable for easier processing
DataTable dataTable = sheet1.ToDataTable(true);
// Export to various formats
workbook.SaveAs("output.csv"); // CSV format
workbook.SaveAsJson("output.json"); // JSON format
workbook.SaveAsXml("output.xml"); // XML format// Load workbook from various sources
WorkBook workbook = WorkBook.Load("data.xlsx");
// Access worksheets in multiple ways
WorkSheet sheet1 = workbook.WorkSheets[0]; // By index
WorkSheet sheet2 = workbook.GetWorkSheet("Sheet2"); // By name
// Read data from ranges
var range = sheet1["A1:C10"];
foreach (var cell in range)
{
Console.WriteLine($"{cell.Address}: {cell.Value}");
}
// Convert to DataTable for easier processing
DataTable dataTable = sheet1.ToDataTable(true);
// Export to various formats
workbook.SaveAs("output.csv"); // CSV format
workbook.SaveAsJson("output.json"); // JSON format
workbook.SaveAsXml("output.xml"); // XML formatVentana de consola que muestra el resultado de la prueba obtenida al leer datos de celdas de Excel utilizando el código de ejemplo de la biblioteca IronXL .NET. Salida de Consola
¿Qué opciones de exportación están disponibles para los archivos de Excel?
También se puede referenciar una hoja de cálculo por nombre o valor de índice para exportar datos desde una hoja de cálculo de Excel a un archivo independiente. IronXL admite la exportación a múltiples formatos, como CSV , JSON, XML y HTML . También puede exportar a DataSet y DataTable para una integración perfecta con su canal de procesamiento de datos .NET.
Para los equipos de startups que necesitan integrarse con varios sistemas, las capacidades de exportación de IronXL permiten un rápido intercambio de datos. Puede cargar Excel desde bases de datos SQL , actualizar registros de bases de datos desde Excel o trabajar con datos de Excel a través de DataTable para la creación rápida de prototipos y desarrollo de MVP.
¿Cuáles son los próximos pasos con IronXL?
Desde la creación de nuevos archivos hasta la realización de cálculos precisos, IronXL lo tiene cubierto para todos sus proyectos de Excel. Hoy, exploramos cómo IronXL puede crear, leer y exportar archivos Excel, y vimos cómo con solo unas pocas líneas de código puedes tener control total sobre estos procesos.
¿Qué funciones avanzadas ofrece IronXL?
Para cualquier tarea programable que involucre documentos de Microsoft Excel, IronXL ofrece una solución integral. Puede realizar cálculos con fórmulas , ordenar cadenas o números, cortar y agregar datos, buscar y reemplazar, fusionar y separar celdas , visualizar datos y guardar archivos. También puede configurar tipos de datos de celdas y validar datos de hojas de cálculo. La capacidad de leer y escribir archivos CSV permite interactuar con datos de Excel.
Las funciones avanzadas adicionales incluyen:
- Formato condicional para visualización dinámica de datos
- Protección con contraseña para archivos de Excel seguros
- Congelar paneles para una mejor navegación
- Añadir comentarios para colaborar
- Agrupar y desagrupar filas y columnas
- Rangos con nombre y tablas con nombre para fórmulas más limpias
- Compatibilidad con hipervínculos para hojas de cálculo interactivas
- Cambio automático de tamaño de filas y columnas para una visualización óptima
¿Cuál es el modelo de precios para los equipos de startups?
IronXL cuesta $799 al lanzarse, pero los clientes pueden optar por pagar una tarifa de membresía anual por mejoras y soporte de producto. IronXL aplica una tarifa de seguridad adicional que permite la redistribución sin restricciones. Visite esta página de licencias para obtener más información sobre los precios.
Para las empresas emergentes, IronXL ofrece licencias de desarrollador que le permiten evaluar la biblioteca sin restricciones. El modelo de licencias es transparente y no tiene tarifas ocultas, y puedes comenzar con una única licencia de desarrollador y actualizarla a medida que tu equipo crece. Consulte las guías de solución de problemas para aplicar licencias en diferentes escenarios de implementación.
Ya sea que esté creando una aplicación Blazor , implementándola en AWS Lambda , trabajando con .NET MAUI o creando aplicaciones web ASP.NET , IronXL proporciona la flexibilidad y el rendimiento necesarios para enviar sus funciones de Excel rápidamente sin la sobrecarga de las dependencias de Microsoft Office.
Preguntas Frecuentes
¿Cómo puedo crear y leer archivos de Excel en .NET sin Interop?
Usando IronXL, puede crear y leer fácilmente archivos de Excel en .NET sin depender de Microsoft Office Interop. Puede usar el método WorkBook.Create() para crear nuevos archivos de Excel y LoadExcel para leer los existentes.
¿Cuáles son los beneficios de usar una biblioteca de Excel para .NET independiente?
Una biblioteca de Excel para .NET independiente como IronXL ofrece la ventaja de no requerir instalaciones de Microsoft Office o Interop. Permite la lectura, escritura y exportación fluida de archivos de Excel en diferentes plataformas como Windows, macOS y Linux.
¿Cómo puedo convertir archivos de Excel a formato CSV programáticamente?
IronXL proporciona funcionalidad para convertir archivos de Excel a formato CSV sin esfuerzo. Use el método SaveAs para exportar su libro de Excel a un formato de archivo CSV.
¿Qué plataformas son compatibles con IronXL para trabajar con archivos de Excel?
IronXL es compatible con múltiples plataformas, incluidas Xamarin, Linux, macOS, Azure, .NET Core y .NET Framework, ofreciendo flexibilidad para desarrolladores que trabajan en diferentes entornos.
¿Qué tipos de datos pueden manejarse dentro de las columnas de Excel usando IronXL?
IronXL admite una amplia gama de tipos de datos, incluidos texto, enteros, fechas, monedas, fórmulas y porcentajes para las columnas de Excel, permitiendo un manejo versátil de datos dentro de las hojas de cálculo.
¿Cómo realizo cálculos en hojas de cálculo de Excel usando una biblioteca para .NET?
Con IronXL, puede realizar cálculos en hojas de cálculo de Excel utilizando fórmulas programáticamente. Esto le permite automatizar cálculos complejos y tareas de procesamiento de datos dentro de sus archivos de Excel.
¿Es posible trabajar con múltiples hojas de trabajo en un archivo de Excel usando una biblioteca para .NET?
Sí, IronXL le permite trabajar con múltiples hojas de trabajo dentro de un archivo de Excel. Puede acceder fácilmente, modificar y exportar datos a través de diferentes hojas de trabajo utilizando su API.
¿Cómo puedo configurar IronXL en un proyecto de .NET Core?
Para configurar IronXL en un proyecto de .NET Core, puede instalarlo a través del Administrador de Paquetes NuGet. Use el comando Install-Package IronXL.Excel en la Consola del Administrador de Paquetes, o agréguelo a través del Administrador de Paquetes NuGet en Visual Studio.
¿Qué opciones de licencia y precios están disponibles para IronXL?
IronXL ofrece varias opciones de licencia que incluyen una tarifa de membresía de un año para mejoras y soporte. Pueden incurrir en costos adicionales por características de seguridad y derechos de redistribución sin restricciones.







