Comment actualiser les tableaux croisés dynamiques dans VBA (avec exemples)



Vous pouvez utiliser les méthodes suivantes pour actualiser les tableaux croisés dynamiques dans Excel à l’aide de VBA :

Méthode 1 : actualiser un tableau croisé dynamique spécifique

Sub RefreshPivotTable()
    Sheet1.PivotTables("PivotTable1").Refreshtable
End Sub

Cette macro particulière actualisera uniquement les valeurs du tableau croisé dynamique appelé PivotTable1 dans la feuille 1 du classeur.

Méthode 2 : actualiser tous les tableaux croisés dynamiques du classeur

Sub RefreshAllPivotTables()
    ThisWorkbook.RefreshAll
End Sub

Cette macro particulière actualisera les valeurs de chaque tableau croisé dynamique de l’ensemble du classeur.

Les exemples suivants montrent comment utiliser chacune de ces méthodes dans la pratique.

Exemple 1 : Actualiser un tableau croisé dynamique spécifique

Supposons que nous ayons créé un tableau croisé dynamique à partir d’un ensemble de données dans Excel :

Lorsque nous sommes sur l’onglet Analyse de tableau croisé dynamique le long du ruban supérieur dans Excel, nous pouvons voir dans le coin supérieur gauche que ce tableau croisé dynamique s’appelle PivotTable1 .

Supposons que nous modifions la dernière valeur de la colonne points de l’ensemble de données de 22 à 200 :

Nous pouvons créer la macro suivante pour actualiser les valeurs de ce tableau croisé dynamique spécifique :

Sub RefreshPivotTable()
    Sheet1.PivotTables("PivotTable1").Refreshtable
End Sub

Lorsque nous exécutons cette macro, les valeurs du tableau croisé dynamique sont automatiquement mises à jour :

Exemple 2 : actualiser tous les tableaux croisés dynamiques du classeur

Supposons que nous ayons créé deux tableaux croisés dynamiques à partir d’un ensemble de données dans Excel :

Le premier tableau croisé dynamique montre la somme des points par équipe et par poste.

Le deuxième tableau croisé dynamique montre la moyenne des points par équipe et par position.

Supposons que nous modifions la dernière valeur de la colonne points de l’ensemble de données de 22 à 200 .

Nous pouvons créer la macro suivante pour actualiser les valeurs de tous les tableaux croisés dynamiques de l’ensemble du classeur :

Sub RefreshAllPivotTables()
    ThisWorkbook.RefreshAll
End Sub

Lorsque nous exécutons cette macro, les valeurs des deux tableaux croisés dynamiques sont automatiquement mises à jour :

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment additionner les valeurs dans une plage
VBA : Comment calculer la valeur moyenne de la plage
VBA : Comment compter les valeurs uniques dans la plage

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *