TDC probleme propriete visible de la classe PivoItem
6 réponses
Pegaze
Bonjour,
j'ai cree un TDC et je voudrais que certains champs soient filtres(visible).
j'ai cree ce code en VBA mais quand je l'execute j'ai une erreur imposible
de definir
la propriete visible de la classe PivotItem
Pourquoi???
le code est le suivant :
Application.ScreenUpdating = False
With ActiveSheet.PivotTables("TCD1").PivotFields("PHASE")
.PivotItems("BE35").Visible = True
End With
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Pegaze,
Tu as un exemple ici :
http://www.contextures.com/excelfiles.html#Pivot
à moins que tu ne veuilles publier ton TDC et ses données sources ici : http://cjoint.com/
Salutations!
"Pegaze" a écrit dans le message de news: Bonjour, j'ai cree un TDC et je voudrais que certains champs soient filtres(visible). j'ai cree ce code en VBA mais quand je l'execute j'ai une erreur imposible de definir la propriete visible de la classe PivotItem
Pourquoi???
le code est le suivant : Application.ScreenUpdating = False With ActiveSheet.PivotTables("TCD1").PivotFields("PHASE") .PivotItems("BE35").Visible = True End With
Merci par avance de votre aide.
Bonjour Pegaze,
Tu as un exemple ici :
http://www.contextures.com/excelfiles.html#Pivot
à moins que tu ne veuilles publier ton TDC et ses données sources ici : http://cjoint.com/
Salutations!
"Pegaze" <Pegaze@discussions.microsoft.com> a écrit dans le message de news: DE577A48-8BCA-4CCC-8F61-8534EF25C233@microsoft.com...
Bonjour,
j'ai cree un TDC et je voudrais que certains champs soient filtres(visible).
j'ai cree ce code en VBA mais quand je l'execute j'ai une erreur imposible
de definir
la propriete visible de la classe PivotItem
Pourquoi???
le code est le suivant :
Application.ScreenUpdating = False
With ActiveSheet.PivotTables("TCD1").PivotFields("PHASE")
.PivotItems("BE35").Visible = True
End With
à moins que tu ne veuilles publier ton TDC et ses données sources ici : http://cjoint.com/
Salutations!
"Pegaze" a écrit dans le message de news: Bonjour, j'ai cree un TDC et je voudrais que certains champs soient filtres(visible). j'ai cree ce code en VBA mais quand je l'execute j'ai une erreur imposible de definir la propriete visible de la classe PivotItem
Pourquoi???
le code est le suivant : Application.ScreenUpdating = False With ActiveSheet.PivotTables("TCD1").PivotFields("PHASE") .PivotItems("BE35").Visible = True End With
Merci par avance de votre aide.
Pegaze
merci pour le coup de main. maintenant j'ai un autre probleme, je vaudrais initialiser tous mes champs a visible = false sauf le champ "vide".
je fais une boucle du compteur-1 mais sa fonctionne pas
Private Sub BT_ok_Click()
Dim i As Integer Dim pt As PivotTable Dim pf As PivotField
Set pt = ActiveSheet.PivotTables(1) Set pf = pt.PivotFields("PHASE") 'tous les champs doivent etre a faux sauf vide
On Error Resume Next
With pt i = 1 For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i End With
With pf .PivotItems(CB_phase.Value).Visible = True End With Application.DisplayAlerts = True Application.ScreenUpdating = True Me.Hide
Pegaze
c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
c'est bon j'ai trouve une solution
dans un module a part j'ai ecris une procedure qui met tous les champs a
visibleúlse
et j'appele ensuite la procedure
le probleme c'est long il y a 15 champs
c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
michdenis
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
.PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" a écrit dans le message de news: c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1
.PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
.PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" <Pegaze@discussions.microsoft.com> a écrit dans le message de news: 21DEB89A-E4E2-48C5-8FDD-34741957F118@microsoft.com...
c'est bon j'ai trouve une solution
dans un module a part j'ai ecris une procedure qui met tous les champs a
visibleúlse
et j'appele ensuite la procedure
le probleme c'est long il y a 15 champs
For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
.PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" a écrit dans le message de news: c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
Pegaze
j'ai essaie mais ca ne marche pas en indexant la PivotItem(i) en + je plante regulierement
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
..PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" a écrit dans le message de news: c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
j'ai essaie mais ca ne marche pas en indexant la PivotItem(i)
en + je plante regulierement
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1
.PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
..PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" <Pegaze@discussions.microsoft.com> a écrit dans le message de news: 21DEB89A-E4E2-48C5-8FDD-34741957F118@microsoft.com...
c'est bon j'ai trouve une solution
dans un module a part j'ai ecris une procedure qui met tous les champs a
visibleúlse
et j'appele ensuite la procedure
le probleme c'est long il y a 15 champs
j'ai essaie mais ca ne marche pas en indexant la PivotItem(i) en + je plante regulierement
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
..PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" a écrit dans le message de news: c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
michdenis
Si tu veux, tu peux toujours m'envoyer directement dans ma bal ton fichier + un peu d'explications sur ce que tu tentes de faire + la version de ton application Excel.
Seulement le TCD et la feuille source des données ! Je regarderai ça plus tard aujourd'hui.
Salutations!
"Pegaze" a écrit dans le message de news: j'ai essaie mais ca ne marche pas en indexant la PivotItem(i) en + je plante regulierement
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
..PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" a écrit dans le message de news: c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs
Si tu veux, tu peux toujours m'envoyer directement dans ma bal ton fichier + un peu d'explications sur ce que tu tentes de faire +
la version de ton application Excel.
Seulement le TCD et la feuille source des données ! Je regarderai ça plus tard aujourd'hui.
Salutations!
"Pegaze" <Pegaze@discussions.microsoft.com> a écrit dans le message de news: A6283F3E-F140-4335-9836-4F83AFD32C78@microsoft.com...
j'ai essaie mais ca ne marche pas en indexant la PivotItem(i)
en + je plante regulierement
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1
.PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
..PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" <Pegaze@discussions.microsoft.com> a écrit dans le message de news: 21DEB89A-E4E2-48C5-8FDD-34741957F118@microsoft.com...
c'est bon j'ai trouve une solution
dans un module a part j'ai ecris une procedure qui met tous les champs a
visibleúlse
et j'appele ensuite la procedure
le probleme c'est long il y a 15 champs
Si tu veux, tu peux toujours m'envoyer directement dans ma bal ton fichier + un peu d'explications sur ce que tu tentes de faire + la version de ton application Excel.
Seulement le TCD et la feuille source des données ! Je regarderai ça plus tard aujourd'hui.
Salutations!
"Pegaze" a écrit dans le message de news: j'ai essaie mais ca ne marche pas en indexant la PivotItem(i) en + je plante regulierement
Bonjour Pegaze,
For i = 1 To .PivotFields.Count - 1 .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!) Next i
cette ligne de code : .PivotItems.Visible = False ("c'est ici que ca marche pas!!!!)
aurait plus de chance de fonctionner si tu l'écrivais comme ceci :
..PivotItems(i).Visible = False
et n'oublie pas, tu dois avoir au moins un pivotitem de visible en tout temps.
Salutations!
"Pegaze" a écrit dans le message de news: c'est bon j'ai trouve une solution dans un module a part j'ai ecris une procedure qui met tous les champs a visibleúlse et j'appele ensuite la procedure le probleme c'est long il y a 15 champs