Publicidad

Leer un fichero Excel desde ASP.NET con ADO.NET


Por Alex el 12/03/2006, Comentarios: 2

Comparte este artículo:      




Si necesitamos leer un fichero Excel desde un programa hecho en ASP.NET no es necesario (en determinadas ocasiones) utilizar los objetos Excel que expone la librería Microsoft.Office.Interop.Excel, es suficiente con leer el Excel con ADO.NET, con el proveedor OleDb.


Como siempre la mejor forma de explicar este proceso es a través de un ejemplo práctico.

En nuestro ejemplo leeremos un fichero Excel y lo asociaremos a un DataSet.

El fichero Excel de muestra contiene varias hojas por lo que a la hora de leer con un SELECT debemos especificar la hoja que queremos leer, en el ejemplo la hoja “authors”

Para empezar definimos la conexión OleDb a nuestro fichero Excel.

string sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=D:Webswwwroot
ootArticulosADOEXCELprueba.xls;" +
"Extended Properties=Excel 8.0;";

Creamos la consula SELECT para leer una Hoja del Excel authors, como si fuera un SELECT a una tabla de SQL.

string sqlExcel = "Select * From [authors$] Order by au_lname";

Definimos el DataSet donde insertaremos los datos que leemos del excel

DataSet DS = new DataSet();

Definimos la conexión OleDb al fichero Excel y la abrimos

OleDbConnection oledbConn = new OleDbConnection(sConnectionString);
oledbConn.Open();

Creamos un comand para ejecutar la sentencia SELECT.

OleDbCommand oledbCmd = new OleDbCommand(sqlExcel, oledbConn);

Creamos un dataAdapter para leer los datos y asocialor al DataSet.

OleDbDataAdapter da = new OleDbDataAdapter(oledbCmd);
da.Fill(DS);

Y por último asociamos el dataset al GridView para mostralos por pantalla en la página aspx.

GridView1.DataSource = DS;
GridView1.DataBind();

Con esto conseguimos leer los datos de un fichero excel. Este ejemplo es muy simple y solo muestra como leerlos y mostralor por pantalla pero una vez tenemos los datos del excel en un DataSet podemos hacer con ellos cualquier operación que necesitemos antes de mostrarlos por pantalla o grabarlos.

Imagen

Saludos
Alex


Si te ha gustado el artículo compartelo en:      



También puede interesarte:

Instalar .NET Core en Ubuntu

Instalar .NET Core en Ubuntu

Por Alex, el 07/02/2020

Limpiar datos de un combobox en winforms.

Limpiar datos de un combobox en winforms.

Por Alex, el 23/03/2010

Crear, copiar y borrar bases de datos SQL Server desde c#.

Crear, copiar y borrar bases de datos SQL Server desde c#.

Por Alex, el 07/03/2010

Escribir en un excel desde c#.

Escribir en un excel desde c#.

Por Alex, el 04/03/2010

Llenar un Repeater o DataList con un DataTable.

Llenar un Repeater o DataList con un DataTable.

Por Alex, el 29/12/2008

El evento SelectedIndexChanged no funciona

El evento SelectedIndexChanged no funciona

Por Alex, el 26/12/2008


Añadir un comentarios:

Nombre:
Email: (no se publica el email)

avatar

Alberto 12/08/2018 06:30:09

buen articulo, tengo una duda, es necesario tener instalado en el servido Microsoft.Jet.OLEDB.4.0? o va con el proyecto compilado de .net?

avatar

axel crespo 12/08/2018 06:30:05

muy buena la ayuda.. En un caso tienen el codigo para generar un archivo de excel, desde asp.net c#
gracias.




SIGUENOS EN

ARCHIVO

Publicidad

.