Visual Basic - Cuadro de diálogo al exportar grilla a escel

Life is soft - evento anual de software empresarial
 
Vista:

Cuadro de diálogo al exportar grilla a escel

Publicado por Martin (3 intervenciones) el 27/08/2017 21:02:08
Hola, Que tal!

Estoy exportando los datos de un datagrid a un excel y quisiera poder poner un cuadro diálogo para poder guardar el archivo. Les dejo el código:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
Private Sub ExportarGrilla(grGrilla As DataGrid)
 
 
'Icono modo de espera
 Dim i   As Integer
 Dim j   As Integer
 Dim TotalFilas As Long
 
    ' -- Colocar el cursor de espera mientras se exportan los datos
    Me.MousePointer = vbHourglass
 
    TotalFilas = grGrilla.ApproxCount
 
 
 
        ' -- Crear nueva instancia de Excel
        Set Obj_Excel = CreateObject("Excel.Application")
        ' -- Agregar nuevo libro
        Set Obj_Libro = Obj_Excel.Workbooks.Add
 
 
 
        ' -- Referencia a la Hoja activa ( la que añade por defecto Excel )
        Set Obj_Hoja = Obj_Excel.ActiveSheet
 
        iCol = 0
        ' --  Recorrer el grGrilla ( Las columnas )
        For i = 0 To grGrilla.Columns.Count - 1
            If grGrilla.Columns(i).Visible Then
                ' -- Incrementar índice de columna
                iCol = iCol + 1
                ' -- Obtener el caption de la columna
                Obj_Hoja.Cells(1, iCol) = grGrilla.Columns(i).Caption
                ' -- Recorrer las filas
                For j = 0 To TotalFilas - 1
                    ' -- Asignar el valor a la celda del Excel
                    Obj_Hoja.Cells(j + 2, iCol) = _
                    grGrilla.Columns(i).CellValue(grGrilla.GetBookmark(j))
                Next
            End If
        Next
 
        ' -- Opcional : colocar en negrita y de color rojo los enbezados en la hoja
        With Obj_Hoja
            .Rows(1).Font.Bold = True
            .Rows(1).Font.Color = vbRed
            ' -- Autoajustar las cabeceras
            .Columns("A:Z").AutoFit
        End With
 
 
Obj_Libro.Save
 
 
Obj_Excel.Quit
 
 
 
 
    ' -- Eliminar las variables de objeto excel
    Set Obj_Hoja = Nothing
    Set Obj_Libro = Nothing
    Set Obj_Excel = Nothing
 
    ' -- Restaurar cursor
    Me.MousePointer = vbDefault
 
 
 
 
 
End Sub


Slds!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Christian
Val: 119
Ha disminuido 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Cuadro de diálogo al exportar grilla a escel

Publicado por Christian (713 intervenciones) el 27/09/2017 00:52:09
Agrega un commondialog y listo. Úsalo con showsave.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar