Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Macro exporta Excel

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

13 Replies
Not applicable
Author

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

jaimeaguilar
Partner - Specialist II
Partner - Specialist II

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

Not applicable
Author

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...

Not applicable
Author

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..

jaimeaguilar
Partner - Specialist II
Partner - Specialist II

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

Not applicable
Author

tu tienes excel instalado? "Excel.Application" es en ingles. intentas Excel.Aplicación.

Not applicable
Author

Si tengo instalado Excel y ya intente de las dos formas pero sigue marcandome el mismo error, de que otra forma podria intentar??? gracias

saludos...

chematos
Specialist II
Specialist II

Puede ser algún tema de seguridad con el ActiveX, podrías probar a crear otro objeto y ver si te da el mismo mensaje de error.

Saludos

Not applicable
Author

Solo en esta macro me manda este error y no se como poder solucionarlo, gracias.

saludos.