¿Cómo puedo actualizar tablas dinámicas con macros?

Expertos

Solicito de su amable ayuda quiero una macro que me actualice varias tablas dinámicas que tengo en diferentes hojas.

Ejemplo

Mi primera hoja se llama Datos, está toda la información, de la segunda hoja en adelante tengo solo tablas dinámicas.

Como podría actualizar todas automáticamente.

1 respuesta

Respuesta
2

Una instrucción de ejemplo:

ActiveSheet. PivotTables("TablaDin03"). PivotCache. Refresh

Por supuesto que aquí habrá que ajustar nombre de hoja (en lugar de ActiveSheet) y nombre de tabla. Si hay una sola tabla en una hoja con colocar el índice 1 será suficiente.

Por ejemplo:

Sheets("Hoja2"). PivotTables(1). PivotCache. Refresh

Sdos y no olvides valorar las respuestas.

Buen día 

Elsa, gracias por tu tiempo 

introduje el código en la línea de tal manera 

sub TD()

hoja5.pivottables(“tabla dinámica01”).pivotcache.refresh

end sub 

me genera un error 1004.

lo que sucede es que en hoja 5(Datos), tengo toda la información, en las hojas 3-4-5-6–7,en cada hoja tengo más de 4 tablas dinámicas quiero poder actualizar con un solo botón

El siguiente código actualiza todas las tablas del libro:

ActiveWorkbook. RefreshAll

En cambio, si solo deseas refrescar las de algunas hojas nomás, utiliza un bucle de este tipo indicando cuáles son las hojas a actualizar:

Sub actualizaTablas()
'solo las tablas de las hojas seleccionadas
For Each sh In Sheets
    If sh.Name = "Hoja2" Or sh.Name = "Hoja5" Then
        sh.Select
        For i = 1 To ActiveSheet.PivotTables.Count
            ActiveSheet.PivotTables(i).PivotCache.Refresh
        Next i
    End If
Next sh
End Sub

Con respecto a los nombres de las hojas, dejé un comentario (o sugerencia) en video 11 de mi canal ;)

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas