En este video te mostrare como puedes importar el contenido de un archivo de Excel a un DataGridView Control de Windows Forms con C# .Net utilizando la libreria Spreadsheetlight.
Etiqueta: SpreadsheetLight
¿Cómo exportar a excel el contenido de un DataGridView de Windows Forms?
En este video te mostrare como puedes exportar el contenido visualizado en un DataGridView de C# Windows Forms a un archivo de Excel.
Leer archivo de Excel en C# .Net sin utilizar Librerías de office #spreadsheetlight
En este video te muestro como leer un archivo de Excel desde C# .Net y guardarlo en una base de datos sin utilizar las librerías de Office.
Utilizaremos una librería creada por el MIT llamada spreadsheetlight
Crear archivo de excel con spreadsheetlight: https://www.youtube.com/watch?v=NlTv8Xv7cW0
Aprende entity framework en 10 minutos: https://www.youtube.com/watch?v=6nT-RjMEG0o
string path = @"C:\turuta\miexcel.xlsx"; SLDocument sl = new SLDocument(path); using (var db= new pruebaEntities()) { int iRow = 2; while (!string.IsNullOrEmpty(sl.GetCellValueAsString(iRow, 1))) { string codigo = sl.GetCellValueAsString(iRow, 1); string nombre = sl.GetCellValueAsString(iRow, 2); int edad = sl.GetCellValueAsInt32(iRow, 3); var oMiExcel = new miexcel(); oMiExcel.codigo = codigo; oMiExcel.nombre = nombre; oMiExcel.edad = edad; db.miexcel.Add(oMiExcel); db.SaveChanges(); iRow++; } }
Crear archivo de Excel en C# .Net sin utilizar Librerías de office #spreadsheetlight #DataTable
En este video te muestro como crear un archivo de Excel desde C# .Net sin utilizar las librerías de Office.
Utilizaremos una librería creada por el MIT llamada spreadsheetlight
Sitio web de spreadsheetlight: http://spreadsheetlight.com/sample-code/
string pathFile = AppDomain.CurrentDomain.BaseDirectory + "miExcel.xlsx"; SLDocument oSLDocument = new SLDocument(); System.Data.DataTable dt = new System.Data.DataTable(); //columnas dt.Columns.Add("Nombre",typeof(string)); dt.Columns.Add("Edad",typeof(int)); dt.Columns.Add("Sexo",typeof(string)); //registros , rows dt.Rows.Add("Pepe",19,"Hombre"); dt.Rows.Add("Ana",20,"Mujer"); dt.Rows.Add("Perla",30,"Mujer"); oSLDocument.ImportDataTable(1, 1, dt, true); oSLDocument.SaveAs(pathFile);
Crear un archivo de Excel en C# .Net sin utilizar las librerías de Office #SpreadsheetLight
Para crear un Excel sin utilizar los dlls de office podemos hacer uso de una librería OpenSource de nombre SpreadsheetLight que creó el MIT.
Primero podemos descargar la librería de la su página: http://spreadsheetlight.com/download/
O podemos descargarla mediante Nuget poniendo su nombre (SpreadsheetLight).
Esta librería tiene una dependencia y es importante agregar la librería DocumentFormat.OpenXml pero tiene que ser la versión 2.0 ya que la más nueva 2.5 no me corrió. Para eso pueden dar clic en este enlace http://www.microsoft.com/en-us/download/details.aspx?id=5124 y pueden descargar la versión 2.0. Ya instalado ese paquete ya solo van a la ruta donde se instaló que casi siempre es c:/Program Files/Open Xml SDK/V2.0/ y ya de ahí solo la agregan a sus referencias al proyecto.
A continuación pongo la siguiente clase como ejemplo con sus comentarios paso por paso.
using SpreadsheetLight; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace CreacionDeExcelSinOffice { class CreadorExcel { private string rutaArchivoCompleta = ""; public CreadorExcel(string nombreArchivo) { //obtenemos la ruta de nuestro programa y concatenamos el nombre del archivo a crear rutaArchivoCompleta = AppDomain.CurrentDomain.BaseDirectory + "/" + nombreArchivo; } public void CrearExcel() { try { //creamos el objeto SLDocument el cual creara el excel SLDocument sl = new SLDocument(); //creamos las celdas en diagonal //utilizando la función setcellvalue pueden navegar sobre el documento //primer parametro es la fila el segundo la columna y el tercero el dato de la celda for (int i = 1; i <= 10; ++i) sl.SetCellValue(i, i, "patito "+i); //Guardar como, y aqui ponemos la ruta de nuestro archivo sl.SaveAs(rutaArchivoCompleta); }catch(Exception ex){ Console.WriteLine("Ocurrio una Excepción: "+ex.Message); } } } }
Y de esta manera hacemos uso de la anterior clase.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace CreacionDeExcelSinOffice { class Program { static void Main(string[] args) { //creamos la clase enviandole el nombre del archivo que deseemos CreadorExcel oCreadorExcel = new CreadorExcel("patito.xlsx"); //ejecutamos el metodo que crea el excel oCreadorExcel.CrearExcel(); //Esto ultimo solo para verificar que todo fue bien. Console.WriteLine("Se creo el archivo, presiona una tecla para terminar"); Console.ReadKey(); } } }
Con esta librería pueden hacer miles de cosas como poner imágenes, gráficos, colores etc. Pero para eso pueden ir directo a este enlace y ver los ejemplos que el mismo MIT da de ayuda.