Compter nombre d'éléments visibles dans un TCD

Résolu/Fermé
1Globule Messages postés 62 Date d'inscription mercredi 4 mai 2016 Statut Membre Dernière intervention 28 mars 2019 - 13 juin 2016 à 15:33
1Globule Messages postés 62 Date d'inscription mercredi 4 mai 2016 Statut Membre Dernière intervention 28 mars 2019 - 14 juin 2016 à 13:50
Bonjour,

J'ai créé un tableau croisé dynamique avec un filtre du rapport "Semaine".
Dans cette liste, je peux choisir un ou plusieurs éléments.

J'essaye, par macro, de compter le nombre d'élément actuellement sélectionné.
Le code suivant indique toujours 1, même si j'ai plusieurs éléments sélectionnés.

MsgBox PivotTables("Tableau croisé dynamique7").PivotFields("Semaine").VisibleItems.Count

Auriez-vous une solution ?

Merci beaucoup.
A voir également:

1 réponse

thev Messages postés 1890 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 26 novembre 2024 691
13 juin 2016 à 22:14
Bonsoir,

proposition non testée


nb_sélectionnés = 0
For Each élément In PivotTables("Tableau croisé dynamique7").PivotFields("Semaine").PivotItems
If élément.Visible Then nb_sélectionnés = nb_sélectionnés + 1
Next
mssgbox nb_sélectionnés
0
1Globule Messages postés 62 Date d'inscription mercredi 4 mai 2016 Statut Membre Dernière intervention 28 mars 2019 2
14 juin 2016 à 09:05
Merci beaucoup, mais il y a une erreur ici : If élément.Visible
Erreur d'exécution 13 : Incompatibilité de type
0
thev Messages postés 1890 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 26 novembre 2024 691 > 1Globule Messages postés 62 Date d'inscription mercredi 4 mai 2016 Statut Membre Dernière intervention 28 mars 2019
14 juin 2016 à 11:54
Il te manque la feuille à laquelle appartient le TCD.


MsgBox Sheets(i).PivotTables("Tableau croisé dynamique7").PivotFields("Semaine").VisibleItems.Count

où i est le numéro de ta feuille.
0
1Globule Messages postés 62 Date d'inscription mercredi 4 mai 2016 Statut Membre Dernière intervention 28 mars 2019 2
14 juin 2016 à 13:50
Ce code est celui que j'ai posté au début, mais il indique toujours 1.
Je suis passé par une solution détournée en comptant le nombre le lignes affichées. C'est brouillon, mais c'est fiable.

Merci quand même.
0