RefreshTable no funciona

Estoy intentando hacer una macro para actualizar una consulta de base de datos y a continuación actualizar todas las tablas dinámicas generadas a partir de esos datos
La macro tiene el siguiente código:
Dim qt As QueryTable
Dim pt As PivotTable
Dim wsheet As Worksheet
For Each qt In Worksheets("Datos").QueryTables
qt.Refresh
Next
For Each wsheet In Worksheets
For Each pt In wsheet.PivotTables: pt.RefreshTable: Next pt
Next wsheet
Si ejecuto la macro desde Microsoft Visual Basic, funciona correctamente.
Si ejecuto la macro desde Excel, me actualiza los "Datos", pero no las tablas dinámicas.
¿Alguien tiene idea de porqué pasa esto?
Gracias

Añade tu respuesta

Haz clic para o