TCD et Macro

Le
rthompson
Bonjour à toutes et tous

Je bloque sur une macro pour faire la mise à jour de plusieurs TCD

La macro ci-dessous fonctionne impeccablement

MAIS

Ce que je cherche à faire est ceci
J'aurais en finale quatre TCD côte à côte et je voudrais pouvoir choisir un
PivotItems pour tous

Une petite liste "Dropdown" et une cellule nommée "TCD_Revendeur_Choisi"

Et je voudrais que tous mes TCD soient mis a jour

Pour le faire avec des pages oas de souci (Merci Gaettan)
Mais est-il possible de décocher tous les items et de sélectionner celui qui
est choisi par une liste unique?

D'avance merci

Rex

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub TCD_100_Choisir_Revendeur()

With ActiveSheet.PivotTables("PivotTable3").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
With ActiveSheet.PivotTables("PivotTable2").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #19405891
Bonjour.
Si la liste déroulante est en D1 :

Sub TCD_100_Choisir_Revendeur()
Dim pi As PivotItem
With ActiveSheet.PivotTables(1).PivotFields("Reseller")
.PivotItems([D1].Value).Visible = True
For Each pi In .PivotItems
If pi.Name <> [D1] Then
pi.Visible = False
End If
Next pi
End With
End Sub

Cordialement.
Daniel

Bonjour à toutes et tous

Je bloque sur une macro pour faire la mise à jour de plusieurs TCD

La macro ci-dessous fonctionne impeccablement

MAIS

Ce que je cherche à faire est ceci
J'aurais en finale quatre TCD côte à côte et je voudrais pouvoir choisir un
PivotItems pour tous

Une petite liste "Dropdown" et une cellule nommée "TCD_Revendeur_Choisi"

Et je voudrais que tous mes TCD soient mis a jour

Pour le faire avec des pages oas de souci (Merci Gaettan)
Mais est-il possible de décocher tous les items et de sélectionner celui qui
est choisi par une liste unique?

D'avance merci

Rex

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub TCD_100_Choisir_Revendeur()

With ActiveSheet.PivotTables("PivotTable3").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
With ActiveSheet.PivotTables("PivotTable2").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


MichDenis
Le #19405981
Un copier-coller d'un message émis le 27/04/09

Cette solution demandait à ce que chaque TDC ait un champ "Page"
qui soit le même.

*****************************************************
Bonjour RThompson,

Utilise un combobox issu de la barre d'outils Contrôle
pour afficher toutes les valeurs de ce champ.

Pour remplir le combobox :

With Feuil1
.Combobox1.List = .Range("C1:C" & .Range("C65536").end(xlup).row).value
End with

Et dans le module feuille où sont les pivottables, tu utilises
quelque chose comme ceci pour l'événement du combobox

'-----------------------------------------
Private Sub ComboBox1_Change()

With Feuil1
With .PivotTables("SonNom_A")
.PivotFields("NomDuChamp_A").CurrentPage = Me.ComboBox1.Value
End With
With PivotTable("SonNom_B")
.PivotFields("NomDuChamp_B").CurrentPage = Me.ComboBox1.Value
End With
End With
End Sub
'-----------------------------------------

Conclusion : à chaque fois que tu modifies le combobox, les 2 champs page
des 2 TDC montrent les données pour le même item du champ.

*****************************************************




"rthompson" discussion :
Bonjour à toutes et tous

Je bloque sur une macro pour faire la mise à jour de plusieurs TCD

La macro ci-dessous fonctionne impeccablement

MAIS

Ce que je cherche à faire est ceci
J'aurais en finale quatre TCD côte à côte et je voudrais pouvoir choisir un
PivotItems pour tous

Une petite liste "Dropdown" et une cellule nommée "TCD_Revendeur_Choisi"

Et je voudrais que tous mes TCD soient mis a jour

Pour le faire avec des pages oas de souci (Merci Gaettan)
Mais est-il possible de décocher tous les items et de sélectionner celui qui
est choisi par une liste unique?

D'avance merci

Rex

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub TCD_100_Choisir_Revendeur()

With ActiveSheet.PivotTables("PivotTable3").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
With ActiveSheet.PivotTables("PivotTable2").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
rthompson
Le #19406051
Bonjour Daniel

Décidément j'ai encore beaucoup à apprendre


Un grand merci à toi

Rex

PS
J'oubliais cela fonctionne impeccablement
Et j'ai adapté ta macro pour mettre à jour tous mes TCD d'un clic

Que du bonheur ;-))))))



"Daniel.C" %
Bonjour.
Si la liste déroulante est en D1 :

Sub TCD_100_Choisir_Revendeur()
Dim pi As PivotItem
With ActiveSheet.PivotTables(1).PivotFields("Reseller")
.PivotItems([D1].Value).Visible = True
For Each pi In .PivotItems
If pi.Name <> [D1] Then
pi.Visible = False
End If
Next pi
End With
End Sub

Cordialement.
Daniel

Bonjour à toutes et tous

Je bloque sur une macro pour faire la mise à jour de plusieurs TCD

La macro ci-dessous fonctionne impeccablement

MAIS

Ce que je cherche à faire est ceci
J'aurais en finale quatre TCD côte à côte et je voudrais pouvoir choisir
un PivotItems pour tous

Une petite liste "Dropdown" et une cellule nommée "TCD_Revendeur_Choisi"

Et je voudrais que tous mes TCD soient mis a jour

Pour le faire avec des pages oas de souci (Merci Gaettan)
Mais est-il possible de décocher tous les items et de sélectionner celui
qui est choisi par une liste unique?

D'avance merci

Rex

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub TCD_100_Choisir_Revendeur()

With ActiveSheet.PivotTables("PivotTable3").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
With ActiveSheet.PivotTables("PivotTable2").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx






rthompson
Le #19406041
OOOUUUUPPSSSSSSSSSS

Et dire que j'ai passé une demi heure ce matin à chercher ce message sans
succès
Je savais que j'avais demandé quelque chose dans le même style
Mais puis j'ai été absent (méchant petit virus Belge, pas Mexicain)

La honte est sur moi comme les abeilles sur un pot de miel


Merci

A très bientôt

Rex





"MichDenis" %23Waq$
Un copier-coller d'un message émis le 27/04/09

Cette solution demandait à ce que chaque TDC ait un champ "Page"
qui soit le même.

*****************************************************
Bonjour RThompson,

Utilise un combobox issu de la barre d'outils Contrôle
pour afficher toutes les valeurs de ce champ.

Pour remplir le combobox :

With Feuil1
.Combobox1.List = .Range("C1:C" & .Range("C65536").end(xlup).row).value
End with

Et dans le module feuille où sont les pivottables, tu utilises
quelque chose comme ceci pour l'événement du combobox

'-----------------------------------------
Private Sub ComboBox1_Change()

With Feuil1
With .PivotTables("SonNom_A")
.PivotFields("NomDuChamp_A").CurrentPage = Me.ComboBox1.Value
End With
With PivotTable("SonNom_B")
.PivotFields("NomDuChamp_B").CurrentPage = Me.ComboBox1.Value
End With
End With
End Sub
'-----------------------------------------

Conclusion : à chaque fois que tu modifies le combobox, les 2 champs page
des 2 TDC montrent les données pour le même item du champ.

*****************************************************




"rthompson" groupe de
discussion :
Bonjour à toutes et tous

Je bloque sur une macro pour faire la mise à jour de plusieurs TCD

La macro ci-dessous fonctionne impeccablement

MAIS

Ce que je cherche à faire est ceci
J'aurais en finale quatre TCD côte à côte et je voudrais pouvoir choisir
un
PivotItems pour tous

Une petite liste "Dropdown" et une cellule nommée "TCD_Revendeur_Choisi"

Et je voudrais que tous mes TCD soient mis a jour

Pour le faire avec des pages oas de souci (Merci Gaettan)
Mais est-il possible de décocher tous les items et de sélectionner celui
qui
est choisi par une liste unique?

D'avance merci

Rex

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sub TCD_100_Choisir_Revendeur()

With ActiveSheet.PivotTables("PivotTable3").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
With ActiveSheet.PivotTables("PivotTable2").PivotFields("Reseller")
.PivotItems("0").Visible = False
.PivotItems("AVI Belgium").Visible = False
.PivotItems("Documents Solution").Visible = False
.PivotItems("Inloc").Visible = False
.PivotItems("Jouenbois").Visible = False
.PivotItems("(blank)").Visible = False
.PivotItems("(ESI)").Visible = True
End With
End Sub
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx



Publicité
Poster une réponse
Anonyme