¿Cómo copiar una tabla dinámica a otra hoja con VBA?

Para copiar una tabla dinámica a otra hoja utilizando VBA, primero debes asegurarte de crear un módulo nuevo en el editor de VBA y luego escribir el código necesario. A continuación se muestra un ejemplo de cómo puedes hacerlo:

Sub CopiarTablaDinamica()

    Dim wsOrigen As Worksheet
    Dim wsDestino As Worksheet
    Dim rngTablaDinamica As Range
    Dim pt As PivotTable
    
    ' Definir las hojas de origen y destino
    Set wsOrigen = ThisWorkbook.Sheets("Hoja1") ' Cambia "Hoja1" al nombre de tu hoja de origen
    Set wsDestino = ThisWorkbook.Sheets("Hoja2") ' Cambia "Hoja2" al nombre de tu hoja de destino

    ' Establecer la tabla dinámica, asume que es la primera en la hoja
    On Error Resume Next
    Set pt = wsOrigen.PivotTables(1)
    On Error GoTo 0
    
    If pt Is Nothing Then
        MsgBox "No se encontró una tabla dinámica en la hoja de origen."
        Exit Sub
    End If

    ' Obtener el rango de la tabla dinámica
    Set rngTablaDinamica = pt.TableRange2

    ' Copiar la tabla dinámica
    rngTablaDinamica.Copy

    ' Pegar la tabla en la hoja de destino
    wsDestino.Range("A1").PasteSpecial Paste:=xlPasteAll
    
    ' Desactiva la selección de las celdas copiadas
    Application.CutCopyMode = False
    
    MsgBox "Tabla dinámica copiada exitosamente."

End Sub

Pasos para usar el código:

  • Abre Excel y presiona `ALT + F11` para abrir el Editor de VBA.
  • Inserta un nuevo módulo: `Insertar > Módulo`.
  • Copia el código anterior en el módulo recién creado.
  • Asegúrate de cambiar los nombres de las hojas en el código a las que corresponden en tu libro (por ejemplo, «Hoja1» y «Hoja2»).
  • Cierra el editor VBA y regresa a Excel.
  • Ejecuta la macro desde `Vista > Macros > Ver Macros`, selecciona `CopiarTablaDinamica` y presiona `Ejecutar`.

Este código copiará la primera tabla dinámica encontrada en la hoja de origen y la pegará en la celda A1 de la hoja de destino. Puedes ajustar la celda de destino si lo deseas.

Conoce nuestra tienda

Ver más productos

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Ayúdanos a hacer crecer el proyecto

Deja un comentario