Publicidad

Escribir en un excel desde c#.


Por Alex el 04/03/2010, Comentarios: 1

Comparte este artículo:      




No voy a referirme a crear Excels desde c# o ASP.NET sino a escribir dentro de un Excel en determinadas celdas o posiciones. En determinadas ocasiones tenemos un fichero Excel como plantilla y hay que escribir en determinadas celdas.


Esto es bastante sencillo de realizar si utilizamos los objetos de Microsoft Excel.

Hay que añadir la siguiente referencia:

Microsoft.Office.Interop.Excel
Cuidado que dependiendo de las versiones de Office que tengáis instaladas en el PC hay tantas dll como versiones. Es decir, si tenéis el office 2003 y 2007 tendréis esta dll versión 11 (2003) y versión 12 (2007), lo mejor es hacerlo para 2003 así el 2007 también puede abrir los ficheros.

Creamos los objetos aplicación, workbook y hoja de Excel con los que vamos a trabajar.

Microsoft.Office.Interop.Excel.Application ExApp; 
ExApp  = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel._Workbook oWBook;
Microsoft.Office.Interop.Excel._Worksheet oSheet;
oWBook = ExApp.Workbooks.Open(“C:\fichero.xls”, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
oSheet = (Microsoft.Office.Interop.Excel._Worksheet)oWBook.ActiveSheet;
Una vez obtenida la hoja podremos escribir en cualquier posición, por ejemplo en la columna 10 fila 2

oSheet.Cells[2, 10] = “columna 10 fila 2”;
Despues cerramos conexiones y listo.

ExApp.Visible = false;
ExApp.UserControl = true;
oWBook.Save();
ExApp.ActiveWorkbook.Close(true, ExcelFile, Type.Missing);
ExApp.Quit();
ExApp = null;
Y con este simple código podemos escribir en cualquier celda del Excel.

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

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

Crear un DataSet vacío

Crear un DataSet vacío

Por Alex, el 26/12/2008


Añadir un comentarios:

Nombre:
Email: (no se publica el email)

avatar

Cristobal Arriaga 08/09/2019 18:24:47

buen dia intente el ejemplo pero me sale un error que no e podido soulucionar espero me puedas ayudar
Excepción de HRESULT: 0x800A03EC'




SIGUENOS EN

ARCHIVO

Publicidad

.