VBA - Actualiser un TCD d'une seul Feuille

Bonjour,

j'ai un fichier Excel 2010 comprenant 10 Feuilles, les Feuilles 1,3 et 5 ont plusieurs TCD.

je ne parviens pas actualiser tous les TDC de la feuille 3 uniquement sans actualiser les autres TCD des feuilles 1 et 5.

je fais appel à vos lumières car personellement je suis encore dans le noir

Par avance merci de votre aide

Mannemax

Bonjour Mannemax,

A tester:

Place ce code dans la feuille 3 uniquement:

pour tous les TCD de la feuille 3

Private Sub Worksheet_Activate()
     ActiveWorkbook.RefreshAll
End Sub

ou

Pour un seul TCD, si il se nomme Tableau croisé dynamique 1:

Private Sub Worksheet_Activate()
     ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotCache.Refresh 
End Sub

Cordialement,

xorsankukai

Bonjour,

Un exemple à adapter :

Public Sub RefreshPivotTables()
Dim ws As Worksheet, pt As PivotTable
    For Each ws In ActiveWorkbook.Worksheets
        If ws.Name = "Feuil3" Then
            For Each pt In ws.PivotTables
                pt.RefreshTable
                'ou
                'pt.PivotCache.Refresh
            Next pt
        End If
    Next ws
End Sub

Bonjour,

La méthode de Jean Eric correspond exactement à mon besoin.

Merci également à xorsankukai mais effectivement je ne l'avais pas préciser, je devais intercaler ce code dans une procédure existante.

Dans tous les cas merci pour vos réponses, je peux finaliser mon projet

Rechercher des sujets similaires à "vba actualiser tcd seul feuille"