elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
08 Octubre 2008, 01:05  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderadores: BADBYTE-K, hadess_inf)
| | | |-+  Exportar DataGridView a Excel (CODIGO)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Exportar DataGridView a Excel (CODIGO)  (Leído 650 veces)
elmaro

Desconectado Desconectado

Mensajes: 214


Unas simples palabras...


Ver Perfil WWW
Exportar DataGridView a Excel (CODIGO)
« en: 05 Febrero 2008, 18:04 »

Aca les dejo un codigo para exportar un DataGridView a Excel.
Crea un archivo .csv y luego lo abre con Excel, evitando la dependencia de alguna version en particular. El codigo es sencillo

Se debe agregar:
Código:
Imports System.IO

Código:
Function Exportar()
        Dim strStreamW As Stream
        Dim strStreamWriter As StreamWriter
        Dim Filas = frm_principal.Grid.Rows.Count
        Dim Columnas = frm_principal.Grid.Columns.Count
        Dim Archivo As String = Application.StartupPath & "\Centros.csv"
        Dim Linea
        Dim f, c

        File.Delete(Archivo)
        strStreamW = File.OpenWrite(Archivo)

        strStreamWriter = New StreamWriter(strStreamW, System.Text.Encoding.UTF8)

        'CABECERA
        For c = 0 To Columnas - 1
            Linea = Linea & frm_principal.Grid.Columns(c).Name & ";"
        Next

        Linea = Mid(Linea, 1, Linea.ToString.Length - 1)
        strStreamWriter.WriteLine(Linea)
        Linea = Nothing

        'FILAS
        For f = 0 To Filas - 1
            For c = 0 To Columnas - 1
                Linea = Linea & frm_principal.Grid.Item(c, f).Value & ";"
                'MsgBox(Grid.Item(c, f).Value)
            Next
            Linea = Mid(Linea, 1, Linea.ToString.Length - 1)
            strStreamWriter.WriteLine(Linea)
            Linea = Nothing
        Next
        strStreamWriter.Close()

        Try
            Process.Start(Archivo) 'Ejecuta el archivo creado
        Catch Ex As Exception
            MsgBox(Ex.Message, MsgBoxStyle.Critical, Ex.Source)
        End Try

    End Function


En un boton:
Código:
Call Exportar()


Espero les sirva.

« Última modificación: 05 Febrero 2008, 18:08 por elmaro » En línea
MANULOMM

Desconectado Desconectado

Mensajes: 280



Ver Perfil
Re: Exportar DataGridView a Excel (CODIGO)
« Respuesta #1 en: 11 Febrero 2008, 15:01 »

el code esta bueno... no lo he visto completo pero veo que concatenas palabras de la forma tradicional (al estilo vb 6) intenta hacer las concatenacion utilizando la clase StringBuilder (System.Text) eso hara las concatenaciones mucho mas rapido y utilizara menos memoria....

Atentamente,

Juan Manuel Lombana
Medellín - Colombia
En línea



D4N93R

Desconectado Desconectado

Mensajes: 237


[P]rofessional [H]acker´s [L]inux [A]ssault [K]it


Ver Perfil
Re: Exportar DataGridView a Excel (CODIGO)
« Respuesta #2 en: 06 Marzo 2008, 23:20 »

Hola,

Así es, StringBuilder es muchísimo más Rápido que simplemente concatenar. Ésto se llama "Buenas Prácticas".

Saludos.
En línea

System.Console.Write("Under Construction!");
Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC