10 Replies Latest reply: Sep 25, 2013 2:17 PM by Julio Galvan RSS

    Macro exporta Excel

      Hola necesito ayuda para crear un boton que ejecute una macro para poder exportar tablas de qlikview a excel

        • Re: Macro exporta Excel

          lo siento. mon espagnol est pauvre.  Use este macro:

           

          Sub exportaexcel

          set XLApp = CreateObject("Excel.Application")

          XLApp.Visible = True

          set XLDoc = XLApp.Workbooks.Add

          XLApp.Worksheets(1).Cells.EntireRow.RowHeight=25

          XLApp.Worksheets(1).Cells.EntireColumn.ColumnWidth=20

           

          ActiveDocument.GetSheetObject("TablasNombre").CopyBitMapToClipboard

          XLApp.Worksheets(1).Range("N1").Select()

          XLApp.Worksheets(1).PasteSpecial

          end sub

           

          Espero que esto sea útil

          • Re: Macro exporta Excel
            Jaime Aguilar

            Hola este código está dividido en 3 subrutinas (Crear XLS, copiar contenido al XLS y guardar el archivo)

             

            SUB CreateXL(File)

             

             

              SET XLApp = CreateObject("Excel.Application")

              XLApp.DisplayAlerts=true

              SET XLDoc = XLApp.Workbooks.Add

              SET sheets = XLDoc.Sheets

             

             

              CopyTableToXL "CH96", sheets("Sheet1"), "A1"

              CopyTableToXL "CH97", sheets("Sheet2"), "A1"

             

            'ESTA PARTE DE ARRIBA SE TENDRÍA QUE ADECUAR PARA QUE LOS DATOS SE PEGUEN A PARTIR DE LA CELDA QUE NECESITES

             

              SaveXL XLApp, XLDoc, File

              ActiveDocument.Activate

             

             

            END SUB

             

             

            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

             

             

            SUB CopyTableToXL(Table, Sheet, InicialCell)

             

              SET obj = ActiveDocument.GetSheetObject(Table)

              obj.CopyTableToClipboard true ' CopyTextToClipboard / CopyBitmapToClipboard

              Sheet.Range(InicialCell).PasteSpecial

             

            END SUB

             

             

            ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

             

             

            SUB SaveXL(XLApp, XLDoc, File)

             

             

              XLApp.DisplayAlerts=False

              XLDoc.SaveAs File

              XLDoc.Close True

              XLApp.Quit

                SET XLDoc = Nothing

                SET XLApp = Nothing

              

            END SUB

             

            Espero te ayude,

             

            saludos

              • Re: Macro exporta Excel

                Hola Jaime Aguilar he utilizado la macro que me mandaste solo que no me ha corrido tengo un problema me manda el siguiente error: Se esperaba un identificador

                Tambien te dejo el codigo para ver si podrias ayudarme a identificar el error que tengo.

                SUB CreateXL(File)

                SET XLApp = CreateObject("Excel.Application")

                XLApp.DisplayAlerts=true

                SET XLDoc = XLApp.Workbooks.Add

                SET sheets = XLDoc.Sheets

                CopyTableToXL "CH12", sheets("Hoja1"), "A1"

                CopyTableToXL "CH44", sheets("Hoja2"), "A1"

                SaveXL XLApp, XLDoc, File

                ActiveDocument.Activate

                END SUB

                 

                 

                SUB CopyTableToXL("CH12", "Hoja1", "A1")

                SET obj = ActiveDocument.GetSheetObject("CH12")

                obj.CopyTableToClipboard true

                Sheet.Range(A1).PasteSpecial

                END SUB

                 

                 

                SUB SaveXL(XLApp, XLDoc, File)

                XLApp.DisplayAlerts=False

                XLDoc.SaveAs File

                XLDoc.Close True

                XLApp.Quit

                SET XLDoc = Nothing

                SET XLApp = Nothing

                END SUB

                 

                muchas gracias por tu ayuda saludos...

              • Re: Macro exporta Excel

                Hola Christopher Parian necesito nuevamente de tu ayuda al ejecutar la macro me aparece el siguiente texto en el editor de Modulo "El componente ActiveX no puede crear el objeto: 'Excel.Application"

                Muchas gracias por tu ayuda.

                Saludos...

                • Re: Macro exporta Excel

                  Hola Jaime Aguilar muchas gracias por tu ayuda, lo que pasa es que soy nuevo en esto y quería saber si todo lo que agregaste se puede introducir a un solo botón y si no fuera así ¿como podría hacerlo? muchas gracias.

                  Saludos Cordiales..

                    • Re: Macro exporta Excel
                      Jaime Aguilar

                      Hola,

                      cada uno de los "SUB" es un bloque de código por separado, esto quiere decir que lo puedes asignar individualmente a uno o varios botones. Si lo quieres hacer todo con un solo botón, tendrías que asignar los subs como acciones del botón (propiedades del boton, pestaña acciones) y el efecto que tendrá es que al hacer click, el botón ejecutará secuencialmente las acciones.

                       

                      saludos