Actualiser TCD en VBA

Bonjour,

Je cherche un code vba qui me permettrai de réactualiser à partir de ma feuille active tous les TCD de mon fichier synthèses.xlsx

Je sais qu’il y a un code de ce type, mais comment adapter à mon cas ?

Option Explicit
Public Sub test()
Dim ws As Worksheet
Dim pt As PivotTable
    Application.ScreenUpdating = False
    For Each ws In ActiveWorkbook.Worksheets
        For Each pt In ws.PivotTables
            pt.PivotFields("Date").ShowDetail = True
        Next pt
    Next ws
End Sub

Bonsoir,

Euh, à partir d'un fichier xlsx, tu auras du mal...

Il faut que le fichier soit enregistré en xlsm (fichier contenant des macros)

Ensuite, cette ligne de code suffit, pour mettre à jour tous les TCD d'un fichier :

ThisWorkbook.RefreshAll

Bonne soirée

Bonjour et bonne année,

Bonjour cousinhub,

Pour commencer, comme évoqué par cousinhub, le classeur doit être enregistré en xlsm.Cdlt.

Option Explicit

Public Sub RefreshAllPivotTables()
Dim ws As Worksheet
Dim pt As PivotTable

    Application.ScreenUpdating = False
    For Each ws In ActiveWorkbook.Worksheets
        For Each pt In ws.PivotTables
            pt.PivotCache.Refresh
        Next pt
    Next ws

End Sub

Re-,

Bonjour, Jean-Eric, et mes meilleurs vœux également.

Euh, une différence entre ton code, et le mien? (A part le nombre de lignes?)

Bonne soirée

Re,

Le code proposé n'actualise que les TCDs du classeur,

Mais il ne réactualise pas les tables (tableaux), les connexions externes, etc...

Cdlt.

Re-,

ça m'a intrigué, vu que j'utilise principalement ce "RefreshAll"...

Et en fouillant, même si je ne suis pas un dieu en anglais, j'ai cru comprendre l'inverse...

Maintenant, peut-être que je me trompe?

http://www.powerpivotpro.com/2010/08/pivot-refresh-vs-update-is-there-a-real-difference/

Et c'est ce que semble dire également µSoft

https://msdn.microsoft.com/fr-fr/library/office/ff838648.aspx

Bonne soirée

Re,

Un lien en français qui résume la méthode.

https://msdn.microsoft.com/fr-fr/library/office/ff838648.aspx

Bonne soirée.

Cdlt.

Re-,

Euh, oui

Cette méthode actualise toutes les plages de données externes ....

Jean-Eric a écrit :

Re,

Le code proposé n'actualise que les TCDs du classeur,

Mais il ne réactualise pas les tables (tableaux), les connexions externes, etc...

Cdlt.

??????????


RE-,

Je viens de comprendre...

Tu parlais du code que tu avais proposé....

Et non du mien...

Dur, dur, ce début d'année...

Bonne soirée

Rechercher des sujets similaires à "actualiser tcd vba"