sábado, 3 de julio de 2010

Obtener datos de una planilla excel usando un OleDbDataAdapter

Requisitos: 
La planilla debe estar guardada en formato excel 2003, el nombre de la hoja no debe superar los 8 caracteres.

var file = @"F:\1.xls";
var cs = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties='Excel 8.0;HDR=NO;IMEX=1;'", file);

var adapter = new OleDbDataAdapter("SELECT * FROM [Hoja1$]", cs);
var ds = new DataSet();
adapter.Fill(ds);
DataTable data = ds.Tables[0];

foreach (DataRow dr in data.Rows)
{
        //Hago algo con los datos
}