Vider le cache des tableaux dyn croise

  • Initiateur de la discussion cpechu
  • Date de début
C

cpechu

Guest
Salut,

j'ai un classeur qui contient un certains nombre de TDC.
Mon probleme est que les listes deroulantes ne sont pas videe ssuite au refresh data.
Plus clairement :
- semaine 1: j'ai les elements a,b,c
- semaine 2: j'ai les elemetn a,b,e
Et bien, la liste deroulante propose a,b,c,e, bien qu'il n'y ait plus d'occurence de 'c'.
Dans mon cas, j'ai une centiane de valeurs 'poubelles' pour une quinzaine de valides.

Vous savez comment purgez ces listes ?

Merci

PS : Tous ces graphes sont mis a jour par macro. il y a bien sur, le moyen de recreer a chaque fois la table et le graphe,mais je trouve ca tres lourd.
 

pobrouwers

XLDnaute Occasionnel
Salut,

Voici un code trouvé sur ce forum que j'utilise et qui fonctionne très bien...
Insere-le dans un module et clique sur play dans le VBE

Sub deleteOldItemsWB()
'gets rid of unused items in pivotTable
'Debra Dalgleish - 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

Est-ce bien ca que tu cherches ?
 

Statistiques des forums

Discussions
312 453
Messages
2 088 550
Membres
103 881
dernier inscrit
malbousquet