Tableau croisé dyn. problème de mise à jour

gfmout

XLDnaute Junior
Bonjour au forum et aux fanas d'excel.

Je viens vers vous pour essayer de trouver comment résoudre un petit problème.

Sur un tableau croisé dynamique, j'ai remarqué que la fenêtre qui permet de ticker les données que l'on veut analyser garde en "mémoire" les anciennes cellules.

Comment faire pour que n'apparaissent que les données actives.

Exemple dans ce fichier joint: en feuille 1 les codes A1 et A2 ont été remplacés par A8 et A9.
Or quand on va dans la feuille 4 là où il y a le tableau croisé dynamique, quand on fait apparaitre la fenêtre déroulante sur le mot "code", A1 et A2 apparaissent toujours dans la liste?
Comment faire pour qu'il ne soit plus pris en compte?

Merci pour vos lumières...

Salutations

Gilles
 

Pièces jointes

  • tableauGM.zip
    2.1 KB · Affichages: 31

gfmout

XLDnaute Junior
Re : Tableau croisé dyn. problème de mise à jour

Bonjour Dugenou!

Effectivement ça marche...

Mais y a til alors moyen d'automatiser l'opération par une macro événementielle par exemple qui ferait l'opération automatiquement à chaque fois que l'on sélectionne la feuille 4?

Merci pour ton aide.

a+

Gilles
 

JeanMarie

XLDnaute Barbatruc
Re : Tableau croisé dyn. problème de mise à jour

Bonsoir

Clique droit sur l'onglet de la feuille contenant le TCD, puis clique sur "visualiser le code", et dans fenêtre qui va s'afficher, tu copies ce code
Code:
Private Sub Worksheet_Activate()
   Range("A4").Select
   ActiveSheet.PivotTables("PivotTable1").RefreshTable
End Sub
@+Jean-Marie
 

Celeda

XLDnaute Barbatruc
Re : Tableau croisé dyn. problème de mise à jour

Bonjour,

Si vous permettez Monsieur le Président du Zop et Monsieur Formules,
je pense qu'il s'agit ici de détruire les anciennes données qui n'apparaissent plus dans la base et comme il y a une très belle macro d'une très grande dame qui fait le travail tout seul, je la reglisse ainsi que le blabala qui va
avec (copié collé du Kiwi de la page 9 de MichelXLD) :


Détruire les anciennes étiquettes dans un TCD

Suite à des modifications des étiquettes dans
la base de données, le TCD ne s'actualise
pas et les étiquettes de colonne persistent
dans les filtres des champs.
Pour les supprimer cette macro de
Debra Dalgleish
à placer dans une module de la feuille

Sub DeleteOldItemsWB()
'gets rid of unused items in PivotTable
' based on MSKB (202232)
Dim ws As Worksheet
Dim pt As PivotTable
Dim pf As PivotField
Dim pi As PivotItem
Dim i As Integer

On Error Resume Next
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
pt.RefreshTable
For Each pf In pt.PivotFields
For Each pi In pf.PivotItems
If pi.RecordCount = 0 And _
Not pi.IsCalculated Then
pi.Delete
End If
Next
Next
Next
Next
End Sub
 

######

XLDnaute Nouveau
Re : Tableau croisé dyn. problème de mise à jour

Bonsoir le Forum, les fanas d'xls,
hommages aux Barbatrucs !
Et tiens bonne année aussi, à toutes et tous,

Je me permets revenir sur ce fil, qui a d'ailleurs été l'objet d'un autre fil "COMMENT SUPPRIMER DES ITEMS DANS UN TABLEAU CROISE DYNAMIQUE".

La manip' pour "nettoyer" la liste déroulante donnée par Céléda (TCD_Claire) des items ne fonctionne pas :
non seulement ça ne met pas à jour, mais ça rajoute d'encore plus anciennes étiquettes !
Quant à la mise en forme, elle est explosée...

Fascinée, mais ignare en VBA... (d'ailleurs j'apprendrais volontiers !) : donc "Pour les supprimer cette macro de
Debra Dalgleish à placer dans une module de la feuille", ça veut dire quoi ? Copier/coller tout ce qu'il y a entre "Sub" et "End Sub", mais où, that's the question ? (oui, c'est affligeant !)

Je suis en 2003 (et oui y'en a encore...).
 

Celeda

XLDnaute Barbatruc
Re : Tableau croisé dyn. problème de mise à jour

Bonjour,

"La manip' pour "nettoyer" la liste déroulante donnée par Céléda (TCD_Claire) des items ne fonctionne pas :
non seulement ça ne met pas à jour, mais ça rajoute d'encore plus anciennes étiquettes !"

Option 1:
==> aller consulter le site de cette grande dame

Option 2:
==> rechercher sur le site car il y a eu d'autres propositions

""Sub" et "End Sub", mais où, that's the question ": à placer dans une module de la feuille

Alt F11, créer un module et faire copier coller de la macro.

ps : je confirme que la macro fonctionne!
 

Discussions similaires

Statistiques des forums

Discussions
312 508
Messages
2 089 138
Membres
104 047
dernier inscrit
bravetta