L'un des gros problèmes des TCDs est leur actualisation. En effet, lorsque vous faites des modifications dans votre base de données, le TCD ne s'ajuste pas automatiquement, principalement pour des raisons de temps de recalcul.
Pour contourner le problème, il peut être utile d'actualiser les TCDs à chaque fois que l'on sélectionne la feuille les contenant.
Pour cela :
- Clic droit sur l'onglet de la feuille contenant le TCD.
- Choisir Visualiser le code.
- Taper ensuite le code suivant :
Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
End Sub
- Revenir à Excel.
En allant sur la feuille TCD, le tableau se met automatiquement à jour.
Bonne journée.
Gaetan Mourmant
C'est génial d'entendre Gaëtan sur Internet!
Bravo pour la nouvelle config de la lettre et du blog.
Jeanne-Marie 🙂
Bonjour, je voudrais savoir comment le web master à fait pour faire une fenêtre de démonstration comme on peut le voir par exemple avec le cas "Actualiser un TCD lors de la sélection d’une feuille", cette forme de présentation me serai très utile.
Cordialement Martin
Bonjour,
J'utilise un logiciel qui s'appelle Camtasia de chez techsmith.
Bonne journée.
Gaetan
Ce code actualise tout à chaque changement d'onglet, même si l'onglet nouvellement activé ne contient pas de tableau croisé dynamique.
Pour raffiner on peut modifier comme suit :
Private Sub Worksheet_Activate()
If ActiveSheet.PivotTables.Count > 0 Then
ThisWorkbook.RefreshAll
End If
End Sub
Est ce que ca ne ralentit pas un peu ?
bonjour
juste le tbcd n'est mis à jour que lorsque on clique sur l'onglet de tbcd
sion il reste sans mise à jour
j'ai fait un recherchv(...) sur le tbcd et lorsque je change les données le recherchev(...) ne change pas
sauf si je reviens sur l'onglet de tcd
merci
Est ce que les options de calculs sont bien à automatique ?
Gaetan
Bonjour,
Oui toutes les options de calcul sont bien activées
et fonctionnent pour d'autres fonctions
je saisi cette occasion de presenter mes remerciements
parce que j'ai appris beaucoup de choses à travers vos cours precieux aussi bien sur ce blog que sur polykromie et sur les lettres
les videos ...
Pouvez vous m'envoyer le fichier? ( contact@polykromy.com )
Je me suis mal exprimé
c'est pas le vba suivant
-----------------
Private Sub Worksheet_Activate()
ThisWorkbook.RefreshAll
End Sub
--------------------------------------
mais pour fichier actualisation tous tableaus croisé dynamique
--------------------------------
Sub V_Sub_Actualise_tous_TcD_de_la_Feuille(LWp_Feuille As Worksheet)
Dim LPT_i_pivot_table_de_la_Feuille As PivotTable 'cette variable represente successivement chaque TcD de la feuille
Dim LI_Nombre_de_Pivot_Table As Integer
Dim LI_index As Integer
Dim LV_StatusBar_Avant As Variant
etc...
super astuce, merci
je cherchais cela depuis très très très longtemps. Je ne comprends pas qu'il n'y ai pas de raccourci clavier du type F5 d'un navigateur web...
Bravo
Un tout grand merci à Gaetan,
Exactement ce que je cherchais depuis très très longtemps, comme xtof,
Simple et efficace
Henri
13 ans d'âge, mais ca vieillit toujours aussi bien 🙂
Merci Gaëtan pour l'actualisation d'un TCD. Encore utile quelques années plus tard...
Si on a beaucoup de requêtes et de TCD, il serait certainement préférable de n'actualiser que les tableaux (ou pivot caches) de la feuille.