Bonjour à toutes et à tous,
Bonjour à toutes et à tous,
Bonjour à toutes et à tous,
Bonjour Céline,
Voici un message de Daniel Maher sur le sujet paru dans de groupe de
discussions :
________________________
Il y a l'alternative proposée par Debra Dalgleish (pas essayé mais
elle m'a
l'air basé sur le fait qu'une destruction d'Items encore valide génère
une
erreur). Moi, je sauvegarderais mon fichier avant!
La voici (à adapter évidemment dans le cas où tu le veux pour un TCD
en
particulier) :
'Debra Dalgleish
'Excel FAQ, Tips & Book List
' http://www.contextures.com/tiptech.html
Sub DeleteOldItemsWB()
'gets rid of unused items in PivotTable based on MSKB (Q202232)
'had to go through procedure twice to clear items (for i= 1 to 2)
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 i = 1 To 2
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
For Each pf In pt.PivotFields
For Each pi In pf.PivotItems
pi.Delete
Next
Next
pt.RefreshTable
Next
Next
Next
End Sub
Salutations,
Daniel M.
_____________________________________
Salutations!
"Céline Brien" a écrit dans le message
de
news:%
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé dynamique
ne
sont plus utilisés dans les données, ils font tout de même partie de
la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29 et
RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau
croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent toujours.
La plupart du temps, cette particularité peut être très très utile.
Par
exemple, si vous avez coché la case demandant d'Afficher les éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonjour Céline,
Voici un message de Daniel Maher sur le sujet paru dans de groupe de
discussions :
________________________
Il y a l'alternative proposée par Debra Dalgleish (pas essayé mais
elle m'a
l'air basé sur le fait qu'une destruction d'Items encore valide génère
une
erreur). Moi, je sauvegarderais mon fichier avant!
La voici (à adapter évidemment dans le cas où tu le veux pour un TCD
en
particulier) :
'Debra Dalgleish
'Excel FAQ, Tips & Book List
' http://www.contextures.com/tiptech.html
Sub DeleteOldItemsWB()
'gets rid of unused items in PivotTable based on MSKB (Q202232)
'had to go through procedure twice to clear items (for i= 1 to 2)
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 i = 1 To 2
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
For Each pf In pt.PivotFields
For Each pi In pf.PivotItems
pi.Delete
Next
Next
pt.RefreshTable
Next
Next
Next
End Sub
Salutations,
Daniel M.
_____________________________________
Salutations!
"Céline Brien" <celinebrien@laurentides.qc.ca> a écrit dans le message
de
news:%23ZslqgEBEHA.2404@TK2MSFTNGP11.phx.gbl...
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé dynamique
ne
sont plus utilisés dans les données, ils font tout de même partie de
la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29 et
RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau
croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent toujours.
La plupart du temps, cette particularité peut être très très utile.
Par
exemple, si vous avez coché la case demandant d'Afficher les éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonjour Céline,
Voici un message de Daniel Maher sur le sujet paru dans de groupe de
discussions :
________________________
Il y a l'alternative proposée par Debra Dalgleish (pas essayé mais
elle m'a
l'air basé sur le fait qu'une destruction d'Items encore valide génère
une
erreur). Moi, je sauvegarderais mon fichier avant!
La voici (à adapter évidemment dans le cas où tu le veux pour un TCD
en
particulier) :
'Debra Dalgleish
'Excel FAQ, Tips & Book List
' http://www.contextures.com/tiptech.html
Sub DeleteOldItemsWB()
'gets rid of unused items in PivotTable based on MSKB (Q202232)
'had to go through procedure twice to clear items (for i= 1 to 2)
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 i = 1 To 2
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
For Each pf In pt.PivotFields
For Each pi In pf.PivotItems
pi.Delete
Next
Next
pt.RefreshTable
Next
Next
Next
End Sub
Salutations,
Daniel M.
_____________________________________
Salutations!
"Céline Brien" a écrit dans le message
de
news:%
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé dynamique
ne
sont plus utilisés dans les données, ils font tout de même partie de
la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29 et
RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau
croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent toujours.
La plupart du temps, cette particularité peut être très très utile.
Par
exemple, si vous avez coché la case demandant d'Afficher les éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
ma pauvre rainette, tu t'es levée bien tôt en ce froid dimanche à
mi-chemin de l'ide de mars pour poser une question à laquelle je ne
saurais répondre...me pardonneras-tu au moins?
jps
Céline Brien a écrit:Bonjour à toutes et à tous,
ma pauvre rainette, tu t'es levée bien tôt en ce froid dimanche à
mi-chemin de l'ide de mars pour poser une question à laquelle je ne
saurais répondre...me pardonneras-tu au moins?
jps
Céline Brien a écrit:
Bonjour à toutes et à tous,
ma pauvre rainette, tu t'es levée bien tôt en ce froid dimanche à
mi-chemin de l'ide de mars pour poser une question à laquelle je ne
saurais répondre...me pardonneras-tu au moins?
jps
Céline Brien a écrit:Bonjour à toutes et à tous,
Salut Denis, Céline,
Pour une version plus récente et AMA, plus sécure :
On peut adapter en suspendant les MAJ calculs/affichage écran.
' Published by Debra Dalgleish 21 Juin 2003
'
'===================== > 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
'======================= >
Salutations,
Daniel M.
Salut Denis, Céline,
Pour une version plus récente et AMA, plus sécure :
On peut adapter en suspendant les MAJ calculs/affichage écran.
' Published by Debra Dalgleish 21 Juin 2003
'
'===================== > 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
'======================= >
Salutations,
Daniel M.
Salut Denis, Céline,
Pour une version plus récente et AMA, plus sécure :
On peut adapter en suspendant les MAJ calculs/affichage écran.
' Published by Debra Dalgleish 21 Juin 2003
'
'===================== > 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
'======================= >
Salutations,
Daniel M.
Salut Daniel,
Merci de ta réponse,
Ta macro comporte une ligne de plus :
If pi.RecordCount = 0 And Not pi.IsCalculated Then pi.Delete
Elle supprime seulement les éléments de champ qui ne sont pas utilisés
dans un calcul ?
Merci encore,
Céline
"Daniel.M" a écrit dans le message
de
news:Salut Denis, Céline,
Pour une version plus récente et AMA, plus sécure :
On peut adapter en suspendant les MAJ calculs/affichage écran.
' Published by Debra Dalgleish 21 Juin 2003
'
'===================== > > 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
'======================= > >
Salutations,
Daniel M.
Salut Daniel,
Merci de ta réponse,
Ta macro comporte une ligne de plus :
If pi.RecordCount = 0 And Not pi.IsCalculated Then pi.Delete
Elle supprime seulement les éléments de champ qui ne sont pas utilisés
dans un calcul ?
Merci encore,
Céline
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message
de
news:OaGgrEHBEHA.2484@TK2MSFTNGP12.phx.gbl...
Salut Denis, Céline,
Pour une version plus récente et AMA, plus sécure :
On peut adapter en suspendant les MAJ calculs/affichage écran.
' Published by Debra Dalgleish 21 Juin 2003
'
'===================== > > 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
'======================= > >
Salutations,
Daniel M.
Salut Daniel,
Merci de ta réponse,
Ta macro comporte une ligne de plus :
If pi.RecordCount = 0 And Not pi.IsCalculated Then pi.Delete
Elle supprime seulement les éléments de champ qui ne sont pas utilisés
dans un calcul ?
Merci encore,
Céline
"Daniel.M" a écrit dans le message
de
news:Salut Denis, Céline,
Pour une version plus récente et AMA, plus sécure :
On peut adapter en suspendant les MAJ calculs/affichage écran.
' Published by Debra Dalgleish 21 Juin 2003
'
'===================== > > 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
'======================= > >
Salutations,
Daniel M.
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé dynamique ne
sont plus utilisés dans les données, ils font tout de même partie de la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29 et RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent toujours.
La plupart du temps, cette particularité peut être très très utile. Par
exemple, si vous avez coché la case demandant d'Afficher les éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé dynamique ne
sont plus utilisés dans les données, ils font tout de même partie de la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29 et RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent toujours.
La plupart du temps, cette particularité peut être très très utile. Par
exemple, si vous avez coché la case demandant d'Afficher les éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé dynamique ne
sont plus utilisés dans les données, ils font tout de même partie de la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29 et RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent toujours.
La plupart du temps, cette particularité peut être très très utile. Par
exemple, si vous avez coché la case demandant d'Afficher les éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonsoir Céline,
si tu as jeté un oeil sur le site de Débra,
il y est marqué également que l'on peut sortir du TCD le pivot Item
concerné
puis réactualiser alors les données
et ensuite remettre le pivot Item à sa place d'origine...
@+
"Céline Brien" a écrit dans le message
de
news:%Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé
dynamique ne
sont plus utilisés dans les données, ils font tout de même partie de
la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29
et RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau
croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent
toujours.
La plupart du temps, cette particularité peut être très très utile.
Par
exemple, si vous avez coché la case demandant d'Afficher les
éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonsoir Céline,
si tu as jeté un oeil sur le site de Débra,
il y est marqué également que l'on peut sortir du TCD le pivot Item
concerné
puis réactualiser alors les données
et ensuite remettre le pivot Item à sa place d'origine...
@+
"Céline Brien" <celinebrien@laurentides.qc.ca> a écrit dans le message
de
news:%23ZslqgEBEHA.2404@TK2MSFTNGP11.phx.gbl...
Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé
dynamique ne
sont plus utilisés dans les données, ils font tout de même partie de
la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29
et RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau
croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent
toujours.
La plupart du temps, cette particularité peut être très très utile.
Par
exemple, si vous avez coché la case demandant d'Afficher les
éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline
Bonsoir Céline,
si tu as jeté un oeil sur le site de Débra,
il y est marqué également que l'on peut sortir du TCD le pivot Item
concerné
puis réactualiser alors les données
et ensuite remettre le pivot Item à sa place d'origine...
@+
"Céline Brien" a écrit dans le message
de
news:%Bonjour à toutes et à tous,
Lorsque des éléments d'un champ composant un tableau croisé
dynamique ne
sont plus utilisés dans les données, ils font tout de même partie de
la
liste déroulante du champ.
Exemple :
Le champ Sous-catégorie comprenait les éléments suivants RT 1 à 29
et RT
30 et +.
Les éléments ont été changés pour RT 1 à 39 et RT 40 et +.
Dans la liste déroulante du champ Sous-catégorie, dans le tableau
croisé
dynamique, les éléments RT 1 à 29 et RT 30 et + apparaissent
toujours.
La plupart du temps, cette particularité peut être très très utile.
Par
exemple, si vous avez coché la case demandant d'Afficher les
éléments
dans donnée. Vous souhaitez qu'un élément qui ne serait pas utilisé
pendant un certain temps fasse tout de même partie de votre tableau
croisé dynamique.
Tout de même, je me demande s'il est possible de "rafraîchir" cette
liste de temps en temps.
À part refaire le tableau croisé dynamique, auriez-vous un truc ?
Merci de votre aide,
Céline