Visual Basic - Exportar a un excel tres tablas en distinta Hoja

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Martin (51 intervenciones) el 11/07/2017 13:46:27
Hola queria saber si desde VB 6.0 se puede exportar 3 tablas a un excel

tengo la tablas CPU, MONITOR Y IMPRESORAS

YO QUERIA QUE DESDE UN BOTON SE EXPORTEN A UN EXCEL LA BASE ES EN ACCESS

DESDE YA GRACIAS
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 Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Andres Leonardo (1798 intervenciones) el 11/07/2017 15:42:11
Claro que se puede....

Un tema muy sencillo es grabar un archivo texto grabado como xls separado por tab o por ; csv ... con eso lo tienes resuelto


Lo mas complicado es tener un objeto XLS de la aplicacion excle ... subir los datos y luego de eso formatear .....

te sirven?
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
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Mariano (51 intervenciones) el 11/07/2017 20:33:50
Hola
si me sirve
como lo tendria que hacer

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
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Andres Leonardo (1798 intervenciones) el 11/07/2017 21:34:06
Teniendo el String o Query SQL yo lo hago asi
Debes tener conectado a la base .. y un objeto recordset




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
Sub ExportaAArchivo(SQL)  ' donde SQL es la sentencia que me tre datos
 
On Error GoTo etterro
 
cont = 0
filename = App.Path & "\Reporte_" & Format(Time, "HHMMSS") & ".xls"
 
Rsio.Open sql, conexion
 
'****si no hay resultados ********
    If Rsio.EOF = True And Rsio.BOF = True Then
    MsgBox "No existen Resultados para mostrar", vbInformation, "Consulta"
    Rsio.Close
    Exit Sub
    End If
'salgo del sub
'**********************************
 
Dim i, j, k As Integer
   'Rs.Open SQL, conexion
   MSf.Cols = Rsio.Fields.Count '+ 1
   MSf.Clear
 
   j = 0
   While j < Rsio.Fields.Count
    datafile = datafile & Rsio.Fields(j).Name & vbTab
     j = j + 1
   Wend
 
            Open filename For Append As 9
                    Print #9, datafile
                    datafile = ""
            Close 9
    i = 1
    k = 0
    While Not Rsio.EOF
        i = i + 1
        MSf.Rows = i
        k = 0
        While k < j
 
            datafile = datafile & Rsio(k) & vbTab
            k = k + 1
        Wend
        datafile = datafile & vbCr
        Rsio.MoveNext 'aumenta el contador
    Wend
       Rsio.Close
 
            Open filename For Append As 9
                    Print #9, datafile
                    datafile = ""
            MsgBox "Query Ejecutado con Exito, Archivo Generado " & filename, vbInformation, "Query"
 
 
etterro:
 
If Err.Number <> 0 Then MsgBox Err.Description
End Sub
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
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Mariano (51 intervenciones) el 11/07/2017 21:44:43
Me dice "se requiere un objeto "
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
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Andres Leonardo (1798 intervenciones) el 12/07/2017 01:46:00
Prueba con este es que le tuve que quitar un flexgrid que era donde veia los datos al exportarlos....

Me avisas

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
Sub ExportaAArchivo(SQL)  ' donde SQL es la sentencia que me tre datos
 
On Error GoTo etterro
 
cont = 0
filename = App.Path & "\Reporte_" & Format(Time, "HHMMSS") & ".xls"
 
Rsio.Open sql, conexion
 
'****si no hay resultados ********
    If Rsio.EOF = True And Rsio.BOF = True Then
    MsgBox "No existen Resultados para mostrar", vbInformation, "Consulta"
    Rsio.Close
    Exit Sub
    End If
'salgo del sub
'**********************************
 
Dim i, j, k As Integer
   'Rs.Open SQL, conexion
 
   j = 0
   While j < Rsio.Fields.Count
    datafile = datafile & Rsio.Fields(j).Name & vbTab
     j = j + 1
   Wend
 
            Open filename For Append As 9
                    Print #9, datafile
                    datafile = ""
            Close 9
    i = 1
    k = 0
    While Not Rsio.EOF
        i = i + 1
        k = 0
        While k < j
 
            datafile = datafile & Rsio(k) & vbTab
            k = k + 1
        Wend
        datafile = datafile & vbCr
        Rsio.MoveNext 'aumenta el contador
    Wend
       Rsio.Close
 
            Open filename For Append As 9
                    Print #9, datafile
                    datafile = ""
            MsgBox "Query Ejecutado con Exito, Archivo Generado " & filename, vbInformation, "Query"
 
 
etterro:
 
If Err.Number <> 0 Then MsgBox Err.Description
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
sin imagen de perfil
Val: 27
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Mariano (51 intervenciones) el 12/07/2017 13:28:24
Hola
te detallo lo que tengo para ver si se pude adecuar a lo que y quiero
ESTE CODIGO ME EXPORTA UNA TABLA A EXCEL A LA HOJA "A1",, MI IDEA ES EXPORTAR OTRA TABLA EN EL MISMO EXCEL EN LA HOJA "A2"


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub Exportar_Click()
Dim i As Long, j As Long
 Dim objExcel As Object
 Dim objWorkbook As Object
 On Error Resume Next ' por si se cierra Excel antes de cargar los datos
 Set objExcel = CreateObject("Excel.Application")
 objExcel.Visible = True
 Set objWorkbook = objExcel.Workbooks.Add
 For i = 0 To MSHFlexGrid1.Rows - 1
 MSHFlexGrid1.Row = i
 For j = 0 To MSHFlexGrid1.Cols - 1
 MSHFlexGrid1.Col = j
 objWorkbook.ActiveSheet.Cells(i + 1, j + 1).Value = MSHFlexGrid1.Text
 Next
 Next
 objExcel.Cells.Select
 objExcel.Selection.EntireColumn.AutoFit ' Ancho de columna
 objExcel.Range("A1").Select
 Set objWorkbook = Nothing
 Set objExcel = Nothing
End Sub

ME PODRIA AYUDAR
DESDE YA GRACIAS
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
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Exportar a un excel tres tablas en distinta Hoja

Publicado por Andres Leonardo (1798 intervenciones) el 12/07/2017 19:00:43
Para ponerlo en la Hoja 2


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Private Sub Exportar_Click( )
Dim i As Long, j As Long
 Dim objExcel As Object
 Dim objWorkbook As Object
 On Error Resume Next ' por si se cierra Excel antes de cargar los datos
 Set objExcel = CreateObject("Excel.Application")
 objExcel.Visible = True
 Set objWorkbook = objExcel.Workbooks.Add
   objWorkbook.Sheets.Add After:=ActiveSheet
    objWorkbook.Sheets("Hoja2").Select
 For i = 0 To MSHFlexGrid1.Rows - 1
 MSHFlexGrid1.Row = i
 For j = 0 To MSHFlexGrid1.Cols - 1
 MSHFlexGrid1.Col = j
 objWorkbook.ActiveSheet.Cells(i + 1, j + 1).Value = MSHFlexGrid1.Text
 Next
 Next
 objExcel.Cells.Select
 objExcel.Selection.EntireColumn.AutoFit ' Ancho de columna
 objExcel.Range("A1").Select
 Set objWorkbook = Nothing
 Set objExcel = Nothing
End Sub
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