Trabajo con Excel en C# (.NET): mejores bibliotecas y ejemplos
Trabajar con hojas de cálculo de Excel es una de las tareas más comunes en el desarrollo corporativo con C#. Ya sea para generar informes, importar datos o automatizar operaciones rutinarias, necesitarás una herramienta confiable. En este artículo analizaremos tres bibliotecas populares para trabajar con Excel en el ecosistema .NET: EPPlus, ClosedXML y NPOI. Conocerás sus características, fortalezas y verás ejemplos de código.
1. EPPlus — una herramienta potente y moderna
EPPlus es una de las bibliotecas más populares para trabajar con archivos Excel (.xlsx) en .NET. Soporta prácticamente todas las funcionalidades de Excel: formato, gráficos, tablas dinámicas, formato condicional y mucho más. A partir de la versión 5, EPPlus se distribuye bajo la licencia Polyform Noncommercial (gratuita para uso no comercial); para uso comercial se requiere la compra de una licencia.
Instalación
Install-Package EPPlusEjemplo: creación de un archivo Excel simple
using OfficeOpenXml;
class Program{ static void Main() { // Establecemos el contexto de licencia (para uso no comercial) ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
using (var package = new ExcelPackage()) { var worksheet = package.Workbook.Worksheets.Add("Informe"); // Encabezados worksheet.Cells["A1"].Value = "Nombre"; worksheet.Cells["B1"].Value = "Edad"; worksheet.Cells["C1"].Value = "Ciudad"; // Datos worksheet.Cells["A2"].Value = "Ana"; worksheet.Cells["B2"].Value = 28; worksheet.Cells["C2"].Value = "Moscú"; worksheet.Cells["A3"].Value = "Iván"; worksheet.Cells["B3"].Value = 35; worksheet.Cells["C3"].Value = "San Petersburgo"; // Formato worksheet.Cells["A1:C1"].Style.Font.Bold = true; worksheet.Cells["A1:C1"].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheet.Cells["A1:C1"].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.LightBlue); // Autoajuste de columnas worksheet.Cells.AutoFitColumns();
// Guardamos var file = new FileInfo("Informe.xlsx"); package.SaveAs(file); } }}Ventajas de EPPlus:
- Soporte para objetos complejos: gráficos, tablas dinámicas, minigráficos
- Alto rendimiento al trabajar con archivos grandes
- Excelente documentación y comunidad activa
Desventajas: licencia comercial paga, no soporta .xls (formato antiguo).
2. ClosedXML — simplicidad y comodidad
ClosedXML es una biblioteca gratuita de código abierto que proporciona una API conveniente para trabajar con Excel. Está construida sobre OpenXML SDK, pero oculta toda la complejidad ofreciendo una interfaz intuitiva. Ideal para la creación rápida de informes y tablas.
Instalación
Install-Package ClosedXMLEjemplo: creación de un archivo con formato
using ClosedXML.Excel;
class Program{ static void Main() { using (var workbook = new XLWorkbook()) { var ws = workbook.Worksheets.Add("Ventas"); // Encabezados ws.Cell("A1").Value = "Producto"; ws.Cell("B1").Value = "Cantidad"; ws.Cell("C1").Value = "Precio"; // Datos ws.Cell("A2").Value = "Portátil"; ws.Cell("B2").Value = 5; ws.Cell("C2").Value = También en la biblioteca
Trabajo con Kafka en Kotlin: bibliotecas, configuración y ejemplos
Configuración de aplicaciones C++: bibliotecas y herramientas para una configuración flexible
Envío de correo electrónico en Swift: bibliotecas y ejemplos para iOS/macOS
Generación de Swagger/OpenAPI para Go (Golang): guía completa