Table des matières
Dans cet article, je vais vous montrer comment vous pouvez Rafraîchir tous les tableaux croisés dynamiques de votre feuille de calcul ou classeur avec VBA dans Excel. Vous apprendrez également à rafraîchir un seul tableau croisé dynamique ainsi que le Tableau croisé dynamique cachette.
Rafraîchir tous les tableaux croisés dynamiques avec VBA dans Excel (vue rapide)
Dim Table As PivotTable For Each Table In ActiveWorkbook.PivotTables Table.RefreshTable Next Table
Cela rafraîchira toutes les Tableaux croisés dynamiques du classeur actif.
Télécharger le cahier d'exercices
Téléchargez ce cahier d'exercices pour vous entraîner pendant que vous lisez cet article.
Rafraîchir tous les tableaux croisés dynamiques.xlsm4 façons de rafraîchir tous les tableaux croisés dynamiques avec VBA dans Excel
A Tableau croisé dynamique est un type particulier de tableau dans une feuille de calcul Excel qui contient deux catégories de données, intitulées Rangée et Valeur respectivement.
Toutes les colonnes du tableau sont classées dans ces deux catégories.
Il est généré automatiquement à partir d'un ensemble de données si vous sélectionnez l'ensemble de données et que vous allez dans l'écran de contrôle. Insérer> ; Tableau croisé dynamique dans la barre d'outils d'Excel.
Aujourd'hui, notre objectif est d'apprendre comment nous pouvons rafraîchir tous les Tableaux croisés dynamiques d'une feuille de calcul ou d'un classeur avec VBA dans Excel.
1. rafraîchir un tableau croisé dynamique unique dans Excel
Tout d'abord, nous apprendrons à rafraîchir un simple Tableau croisé dynamique .
Pour rafraîchir un seul Tableau croisé dynamique d'abord, vous devez vous y référer en tant que Tableau croisé dynamique objet.
Vous devez alors utiliser le RefreshTable méthode de VBA .
Ici, nous avons un Tableau croisé dynamique appelé Tableau croisé dynamique1 dans la feuille de calcul active. (Cliquez ici pour savoir Comment obtenir le nom du tableau croisé dynamique ? ).
Pour le rafraîchir, nous devons utiliser les lignes de code suivantes :
Dim Table1 As PivotTable Set Table1 = ActiveSheet.PivotTables("PivotTable1") Table1.RefreshTable
Exécutez le code, et il rafraîchira l'image de la Tableau croisé dynamique appelé Tableau croisé dynamique1 dans la feuille de calcul active.
Lire la suite : Comment rafraîchir automatiquement un tableau croisé dynamique dans Excel (2 méthodes)
2. rafraîchir tous les tableaux croisés dynamiques d'une feuille de calcul dans Excel
Maintenant, nous allons rafraîchir tous les Tableaux croisés dynamiques d'une feuille de calcul avec VBA .
Pour rafraîchir tous les Tableaux croisés dynamiques de la feuille de travail active, vous devez itérer à travers chaque Tableau croisé dynamique de la ActiveSheet.PivotTables Puis utilisez l'objet RefreshTable méthode.
Dim Table As PivotTable For Each Table In ActiveSheet.PivotTables Table.RefreshTable Next Table
Exécutez le code, et il rafraîchir tous les tableaux croisés dynamiques de la feuille de calcul active.
Lire la suite : Le tableau croisé dynamique ne se rafraîchit pas (5 problèmes et solutions)
3. rafraîchir tous les tableaux croisés dynamiques d'un classeur en Excel
Vous pouvez également rafraîchir toutes les Tableaux croisés dynamiques d'un classeur dans Excel.
Pour rafraîchir tous les Tableaux croisés dynamiques du classeur actif, itérer à travers chaque tableau par la méthode ActiveWorkbook.PivotTables objet de VBA Ensuite, utilisez le RefreshTable méthode.
Dim Table As PivotTable For Each Table In ActiveWorkbook.PivotTables Table.RefreshTable Next Table
Ce code va rafraîchir toutes les Tableaux croisés dynamiques du classeur actif.
Lire la suite : Comment mettre automatiquement à jour un tableau croisé dynamique lorsque les données sources changent ?
4. rafraîchir le cache du tableau croisé dynamique avec VBA dans Excel
Si vous avez plusieurs Tableaux croisés dynamiques dans votre classeur qui utilisent les mêmes données, vous feriez mieux d'actualiser les Cache du tableau croisé dynamique plutôt que de rafraîchir le Tableau croisé dynamique .
Pour rafraîchir le Cache du tableau croisé dynamique , itérer à travers chaque Cache du tableau croisé dynamique du classeur actif par le ActiveWorkbook.PivotCaches objet.
Utilisez ensuite le R efresh méthode de VBA .
Dim Cache As PivotCache For Each Cache In ActiveWorkbook.PivotCaches Cache.Refresh Next Cache
Il rafraîchira tous les Cache du tableau croisé dynamique du classeur actif.
Lire la suite : Comment rafraîchir automatiquement un tableau croisé dynamique sans VBA dans Excel (3 méthodes intelligentes)
Les choses à retenir
Ici, nous avons montré pour rafraîchir le Tableaux croisés dynamiques Si vous souhaitez rafraîchir les données d'une feuille de calcul ou d'un classeur qui n'est pas actif, utilisez le nom de la feuille de calcul ou du classeur à la place de l'option de remplacement. Feuille active ou le ActiveWorkbook objet.
Par exemple, pour rafraîchir toutes les Tableaux croisés dynamiques de Feuille 1 utiliser Pour chaque tableau dans Worksheets("Sheet1").PivotTables .
Et pour se rafraîchir de Cahier d'exercices 1 utiliser For Each Table In Workbooks("Workbook1").PivotTables .
Conclusion
En utilisant ces méthodes, vous pouvez rafraîchir toutes les Tableaux croisés dynamiques à partir d'une feuille de calcul ou d'un classeur avec VBA Vous avez des questions ? N'hésitez pas à nous les poser.