Saltar al pie de página
USANDO IRONXL

Cómo cargar un archivo de Excel en C#

Para cargar archivos de Excel en C#, utilice el método WorkBook.Load() de la biblioteca IronXL, que acepta rutas de archivo, flujos o matrices de bytes, y luego acceda a las hojas de cálculo y lea los valores de las celdas mediante programación sin necesidad de instalar Microsoft Office.

Este artículo mostrará cómo cargar archivos de Excel utilizando la biblioteca IronXL, una completa biblioteca de Excel para C#, de forma eficiente y mediante programación. Tanto si está creando aplicaciones ASP.NET MVC que leen archivos Excel como si está desarrollando lectores de Excel para Windows Forms, IronXL ofrece una solución sencilla pero potente.

Cómo cargar archivos de Excel

  1. Abra Visual Studio y cree un nuevo proyecto de Visual Studio.
  2. Descargue la biblioteca del paquete NuGet de IronXL.
  3. Cree un libro de Excel en formato de archivo XLSX o CSV.
  4. Ahora cargue el archivo de Excel usando la biblioteca de IronXL.
  5. Procese los valores de Excel utilizando el rango de celdas.

¿Qué es IronXL y por qué debería utilizarlo?

¿Qué es IronXL?

La biblioteca de Excel for .NET en C#, IronXL, se puede usar para leer datos de y convertir documentos de Microsoft Excel a archivos CSV. No es necesaria la instalación de Microsoft Office, Microsoft.Office.Interop.Excel o Excel Interop para IronXL. Se trata de una biblioteca de aplicaciones de Excel for .NET totalmente independiente que funciona a la perfección con contenedores Docker y que puede implementarse en funciones de AWS Lambda o en servicios en la nube de Azure. Puede leer numerosos formatos de hojas de cálculo.

Las hojas de cálculo de Excel en un entorno .NET se pueden generar, modificar y ver fácilmente gracias a la sencilla API C# de IronXL. IronXL es totalmente compatible con las aplicaciones principales de .NET, entornos Linux, sistemas macOS, Azure y Xamarin. La biblioteca también se integra perfectamente con aplicaciones Blazor para leer archivos Excel y proyectos .NET MAUI. A continuación se muestra una lista con las características clave de IronXL que lo distinguen de otras aplicaciones para leer archivos de Excel.

¿Cuáles son las características clave que hacen que IronXL destaque?

¿Por qué debería elegir la biblioteca IronXL en lugar de otras bibliotecas de Excel?

Con estas características, IronXL se convierte en una biblioteca flexible y potente para trabajar con archivos de Excel, brindando a los desarrolladores más comodidad y flexibilidad al gestionar sus tareas relacionadas con documentos de Excel de forma programada. La biblioteca ofrece una completa documentación de referencia de la API y extensos tutoriales para ayudar a los desarrolladores a ponerse en marcha rápidamente. Para obtener más información sobre la biblioteca IronXL, consulta esos documentos.

¿Cómo configuro un proyecto .NET para operaciones con archivos de Excel?

La biblioteca IronXL facilita la escritura de datos y la creación y lectura de archivos Excel, como verás en las siguientes secciones. Antes de empezar, asegúrate de haber configurado correctamente tu clave de licencia si estás utilizando la versión completa, o bien puedes empezar con una prueba gratuita. En el caso de las aplicaciones web, es posible que tengas que configurar la clave de licencia en tu archivo web.config.

En primer lugar, vamos a iniciar un nuevo proyecto para trabajar con archivos de Excel:

¿Cómo se crea un nuevo proyecto en Visual Studio?

Elija "Nuevo Proyecto" del menú "Archivo" una vez que Visual Studio se haya lanzado.

Los plantillas de proyectos de "Aplicación de Consola" .NET aparecerán en el cuadro de diálogo que sigue; selecciónelos y haga doble clic en "Siguiente".

Cuadro de diálogo Nuevo Proyecto

¿Qué ajustes del proyecto debo configurar?

Puede escribir cualquier nombre de proyecto que desee para el Proyecto después de ingresar la ubicación del nuevo proyecto en el área de Ubicación. Para este tutorial, considera darle un nombre descriptivo como "ExcelReaderApp" o "IronXLDemo". Presione el botón Siguiente para continuar.

Cuadro de diálogo de configuración de nuevo proyecto de Visual Studio que muestra opciones para crear una aplicación de consola C# con campos vacíos para el nombre del proyecto Configuración del Proyecto

¿Qué versión de .NET Framework debo seleccionar?

Con el menú desplegable del Marco, puede elegir un .NET Framework. Aquí se está usando la versión 6.0 de .NET con soporte a largo plazo. IronXL es compatible con múltiples versiones de .NET, por lo que puede elegir en función de los requisitos de su proyecto. Después, haga clic en "Crear".

Pantalla de configuración de un proyecto de Visual Studio que muestra los ajustes de la aplicación de consola con .NET 6.0 resaltado como el marco seleccionado. La casilla de verificación No utilizar sentencias de nivel superior es claramente visible y está desmarcada. Selección de marco objetivo

¿Cómo instalo la biblioteca IronXL?

La siguiente solución requiere la biblioteca IronXL, que debe obtener. Para hacerlo, ingrese el siguiente comando en la Consola del Administrador de Paquetes:

Install-Package IronXL.Excel

Ventana de la Consola del Administrador de paquetes en Visual Studio que muestra la instalación correcta del comando Instalación de IronXL

Una alternativa sería usar el Administrador de Paquetes NuGet para buscar el paquete "IronXL".

La búsqueda debería resultar en una lista de todos los paquetes NuGet vinculados a IronXL. Luego, seleccione el necesario y haga clic en el botón instalar.

Ventana del Administrador de paquetes NuGet en Visual Studio en la que se destaca el paquete IronXl.Excel con la versión 2023.4.13. El botón Administrador de Paquetes NuGet

¿Cómo puedo leer archivos de Excel con IronXL?

El siguiente código le permite cargar y leer archivos de Excel usando IronXL. Este ejemplo muestra el enfoque básico para leer archivos de Excel sin Interop.

using IronXL;
using System.Linq;

// Load the workbook with the name "Demo.xlsx".
WorkBook workBook = WorkBook.Load("Demo.xlsx");

// Access the first worksheet in the workbook.
WorkSheet sheet = workBook.WorkSheets.First();

// Iterate through the range of cells A2 to B10 and print each cell's address and text content.
foreach (var cell in sheet["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
using IronXL;
using System.Linq;

// Load the workbook with the name "Demo.xlsx".
WorkBook workBook = WorkBook.Load("Demo.xlsx");

// Access the first worksheet in the workbook.
WorkSheet sheet = workBook.WorkSheets.First();

// Iterate through the range of cells A2 to B10 and print each cell's address and text content.
foreach (var cell in sheet["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
$vbLabelText   $csharpLabel

¿Qué hace cada parte del código?

La primera línea de código, using IronXL;, se invoca para implementar la biblioteca IronXL en este proyecto de demostración, lo que hace que las funcionalidades de IronXL estén disponibles.

A continuación, cargue el archivo Excel existente, denominado "Demo.xlsx", utilizando el método Load, disponible en el objeto WorkBook.

El método Load acepta tres tipos de entradas: un nombre de archivo con la ruta, un flujo y matrices de bytes. En el ejemplo anterior, se usa el método con el nombre de archivo y la ruta para cargar el archivo.

¿Cómo puedo acceder a hojas de cálculo y rangos de celdas específicos?

Para realizar la operación de lectura del archivo Excel, obtenemos el valor predeterminado WorkSheet utilizando el método First() para seleccionar la hoja de cálculo inicial de la colección de hojas de cálculo del libro. También puede gestionar hojas de cálculo accediendo a ellas por nombre o por índice.

Posteriormente, el rango de hojas de cálculo de Excel se selecciona utilizando el objeto de la hoja de trabajo especificando el rango de celdas. La función de selección de rango le permite trabajar con celdas específicas, filas completas o columnas. A continuación, recorrerá cada uno de los valores de celda dentro del rango especificado (A2:B10) y mostrará el valor junto con la dirección de la celda.

¿Qué resultado debo esperar de este código?

Hoja de cálculo de Excel que muestra datos de ejemplo (nombre del cliente, fecha del pedido, producto, etc.) con una ventana de consola de C# debajo que muestra las referencias de celda y los valores que lee el código de IronXL. Salida del ejemplo de código anterior

El ejemplo anterior demuestra la carga de un archivo de Excel en C# y su salida resultante al usar IronXL. Utiliza las hojas de Excel haciendo referencia al índice de fila y columna.

¿Cómo puedo gestionar diferentes formatos de archivo de Excel?

IronXL es compatible con varios formatos de archivo de Excel además del estándar XLSX. Puede leer archivos XLSX, trabajar con formatos XLS más antiguos e incluso leer archivos CSV utilizando la misma API. A continuación se muestra un ejemplo de cómo cargar diferentes tipos de archivos:

// Load an XLSX file
WorkBook xlsxWorkbook = WorkBook.Load("data.xlsx");

// Load a CSV file
WorkBook csvWorkbook = WorkBook.LoadCSV("data.csv", delimiter: ",");

// Load an XLS file (older Excel format)
WorkBook xlsWorkbook = WorkBook.Load("legacy.xls");

// Load from a stream instead of a file path
using (FileStream stream = new FileStream("data.xlsx", FileMode.Open))
{
    WorkBook streamWorkbook = WorkBook.Load(stream);
}
// Load an XLSX file
WorkBook xlsxWorkbook = WorkBook.Load("data.xlsx");

// Load a CSV file
WorkBook csvWorkbook = WorkBook.LoadCSV("data.csv", delimiter: ",");

// Load an XLS file (older Excel format)
WorkBook xlsWorkbook = WorkBook.Load("legacy.xls");

// Load from a stream instead of a file path
using (FileStream stream = new FileStream("data.xlsx", FileMode.Open))
{
    WorkBook streamWorkbook = WorkBook.Load(stream);
}
$vbLabelText   $csharpLabel

Para obtener más información sobre la programación con IronXL, consulta este ejemplo.

¿Cuáles son los siguientes pasos tras cargar los archivos de Excel?

IronXL es un complemento de Excel muy popular que funciona sin la necesidad de ninguna biblioteca externa adicional. Tiene varios usos y no necesita tener Microsoft Excel instalado.

Todas las tareas programables involucrando documentos de Microsoft Excel pueden resolverse completamente con IronXL. Puede añadir y eliminar datos, buscar y reemplazar, combinar y separar tablas de datos o celdas, ordenar cadenas o números, visualizar una tabla de datos y guardar archivos. También es posible realizar cálculos de fórmulas con IronXL utilizando la función de edición de fórmulas. También puede establecer tipos de datos de celdas y examinar datos de hojas de cálculo con él. La capacidad de leer y escribir archivos CSV disponible con IronXL es imprescindible para trabajar con datos de Excel.

Funciones avanzadas que explorar

Una vez que domines la carga de archivos de Excel, considera explorar estas funciones avanzadas:

¿Quieres probarlo tú mismo?

Aunque IronXL ofrece una prueba gratuita, los usuarios pueden optar por actualizar a una membresía paga durante 1 año para recibir actualizaciones y asistencia al cliente. IronXL cobra extra por la seguridad que permite una distribución sin restricciones. Para obtener más información sobre los detalles de los precios, consulte esta página de licencias.

Preguntas Frecuentes

¿Cómo puedo cargar un archivo de Excel en C# sin usar Interop?

Puedes cargar un archivo de Excel en C# sin usar Interop utilizando la biblioteca IronXL. Comienza instalando el paquete NuGet de IronXL en tu proyecto, luego usa el método WorkBook.Load para cargar programáticamente tu archivo Excel.

¿Cuáles son los pasos para configurar IronXL en un proyecto de Visual Studio?

Para configurar IronXL en un proyecto de Visual Studio, crea un nuevo proyecto, instala el paquete NuGet de IronXL a través del Gestor de Paquetes NuGet, y luego puedes comenzar a crear o cargar archivos de Excel usando la API de la biblioteca.

¿Puede IronXL ser utilizado con .NET Core 6?

Sí, IronXL es totalmente compatible con .NET Core 6. Puedes integrarlo sin problemas en tus proyectos .NET Core para gestionar archivos de Excel.

¿Cómo gestiona IronXL grandes conjuntos de datos de Excel?

IronXL está optimizado para manejar grandes conjuntos de datos eficientemente. Sus capacidades de multiproceso le permiten procesar rápidamente grandes cantidades de datos sin comprometer el rendimiento.

¿Es posible leer y convertir archivos de Excel con IronXL?

Sí, IronXL te permite leer datos de archivos de Excel y convertirlos a diferentes formatos como CSV. Esto se puede hacer programáticamente usando su API de C#.

¿Qué formatos de archivo soporta IronXL para archivos de Excel?

IronXL soporta una variedad de formatos de archivo de Excel incluyendo XLSX, CSV, XLS, XLST, TSV, y XLSM, haciéndolo versátil para diferentes requerimientos de proyectos.

¿Puede IronXL ser utilizado en diferentes sistemas operativos?

Sí, IronXL es multiplataforma y funciona en Windows, macOS y Linux, permitiendo a los desarrolladores usar la biblioteca en diversos entornos.

¿Cómo puedo manejar diferentes tipos de datos en Excel usando IronXL?

IronXL puede gestionar varios tipos de datos en columnas de Excel, como texto, números, fechas y fórmulas, proporcionando una solución flexible para la manipulación de datos.

¿Cuáles son las ventajas de usar IronXL para tareas de Excel en C#?

IronXL ofrece varias ventajas incluyendo facilidad de uso, compatibilidad con múltiples plataformas, soporte para una amplia gama de formatos de Excel, y sin dependencia de instalaciones de Microsoft Excel.

¿Cómo puedo probar IronXL para la gestión de archivos de Excel?

Puedes probar IronXL con una versión de prueba gratuita. Para acceder a características adicionales, actualizaciones y soporte al cliente, considera actualizar a una membresía paga.

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

Equipo de soporte de Iron

Estamos disponibles online las 24 horas, 5 días a la semana.
Chat
Email
Llámame