• Viernes 8 de Noviembre de 2024, 11:47

Autor Tema:  Exportar Datagridview A Excel  (Leído 1793 veces)

xsara678x

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Exportar Datagridview A Excel
« en: Sábado 15 de Marzo de 2008, 18:22 »
0
Hola quisiera saber si alguien sabe cuales son los pasos a seguir para poder exportar un datagrdiview a una hoja de calculo excel, pero por favor diganme desde el principio k se debe hacer primero.

Jorge Israel López Ramíre

  • Miembro activo
  • **
  • Mensajes: 39
    • Ver Perfil
Re: Exportar Datagridview A Excel
« Respuesta #1 en: Lunes 24 de Marzo de 2008, 22:23 »
0
Hola esta exportación la he echo desde un datagridview a un txt. el código es es sig. Supongo que el procedimiento debe ser parecido para realizarlo en excel.

   1. Option Explicit On  
   2. Option Strict On  
   3.  
   4. ' para usar la clase StreamWriter  
   5. Imports System  
   6. Imports System.IO  
   7.  
   8. Public Class Form1  
   9.  
  10.     ' botón para recorrer el datagridView y guardarlo en el archivo  
  11.     Private Sub Button1_Click( _  
  12.         ByVal sender As System.Object, _  
  13.         ByVal e As System.EventArgs) _  
  14.         Handles Button1.Click  
  15.  
  16.         Const DELIMITADOR As String = ";"  
  17.  
  18.         ' ruta del fichero de texto  
  19.         Const ARCHIVO_CSV As String = "c:\archivo.txt"  
  20.  
  21.         Try  
  22.             'Nuevo objeto StreamWriter, para acceder al fichero y poder guardar las líneas  
  23.             Using archivo As StreamWriter = New StreamWriter(ARCHIVO_CSV)  
  24.  
  25.                 ' variable para almacenar la línea actual del dataview  
  26.                 Dim linea As String = String.Empty  
  27.  
  28.                 With DataGridView1  
  29.                     ' Recorrer las filas del dataGridView  
  30.                     For fila As Integer = 0 To .RowCount - 1  
  31.                         ' vaciar la línea  
  32.                         linea = String.Empty  
  33.  
  34.                         ' Recorrer la cantidad de columnas que contiene el dataGridView  
  35.                         For col As Integer = 0 To .Columns.Count - 1  
  36.                             ' Almacenar el valor de toda la fila , y cada campo separado por el delimitador  
  37.                             linea = linea & .Item(col, fila).Value.ToString & DELIMITADOR  
  38.                         Next  
  39.  
  40.                         ' Escribir una línea con el método WriteLine  
  41.                         With archivo  
  42.                             ' eliminar el último caracter ";" de la cadena  
  43.                             linea = linea.Remove(linea.Length - 1).ToString  
  44.                             ' escribir la fila  
  45.                             .WriteLine(linea.ToString)  
  46.                         End With  
  47.                     Next  
  48.                 End With  
  49.             End Using  
  50.  
  51.             ' Abrir con Process.Start el archivo de texto  
  52.             Process.Start(ARCHIVO_CSV)  
  53.  
  54.             'error  
  55.         Catch ex As Exception  
  56.             MsgBox(ex.Message.ToString, MsgBoxStyle.Critical)  
  57.         End Try  
  58.     End Sub  
  59.  
  60.     Private Sub Form1_Load( _  
  61.         ByVal sender As System.Object, _  
  62.         ByVal e As System.EventArgs) Handles MyBase.Load  
  63.  
  64.         Button1.Text = "Guardar en csv"  
  65.  
  66.         With DataGridView1  
  67.             ' agregar cuatro columnas al control DataGridView  
  68.             For iHeader As Integer = 0 To 3  
  69.                 .Columns.Add("Columna " & iHeader.ToString, _  
  70.                              "Columna " & iHeader.ToString)  
  71.             Next  
  72.  
  73.             ' Indicar a la propiedad RowCount la cantidad de filas a establecer  
  74.             .RowCount = 20  
  75.  
  76.             ' Recorrer toda las filas  
  77.             For fila As Integer = 0 To .Rows.Count - 1  
  78.                 ' recorrer todas las columnas  
  79.                 For col As Integer = 0 To .Columns.Count - 1  
  80.                     ' Añadir algunos datos en cada celda  
  81.                     .Item(col, fila).Value = "Fila: " & fila & " Columna " & col  
  82.                 Next  
  83.             Next  
  84.         End With  
  85.     End Sub  
  86. End Class  

Espero te funcione, cualquier duda, estamos a la orden.
 :hola: SALUDOS :hola: