Tableau croisé dynamique - comment "déselectionner" un PivotItems redondant?

Résolu
Stardust31 Messages postés 50 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 29 novembre 2010 - 1 avril 2010 à 22:40
Stardust31 Messages postés 50 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 29 novembre 2010 - 6 avril 2010 à 19:43
Bonsoir,
sous vba, je crée un TCD.
Dans mon tableur sélectionné, j'ai des dates dont le format est "mm-aaaa".
Dans mon TCD, je me retrouve avec des PivotItems avec la même valeur (ex : 03/04/2010 ; 15/04/2010 ; 25/04/2010 donnent 3 x "avr-2010").
quand je fais :

For i=1 to pivotitems.count
pivotitems(i).visible = false
etc.......

en résultat, seul le 1° "avr-2010" est décoché.....

comment décocher les autres ?

merci du coup de patte.

4 réponses

jordane45 Messages postés 38170 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 10 mai 2024 344
6 avril 2010 à 11:39
bonjour,

il faut indiquer le TCD utilisé ainsi que le champ concerné.

Je pense que tu peux essayer un truc du genre :
    For i = 1 To 2
        ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "Date" & Chr(10) & "jj/mm/aa").PivotItems(i).Visible = False
         Next




Cordialement,
Jordane,
3
jordane45 Messages postés 38170 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 10 mai 2024 344
6 avril 2010 à 18:24
Bonjour,

Pour les dates le souci ne vient pas exactement du VBA mais plutot de la gestion faite par les applications Office ... ^^

Je remedie au problême en forcant mes données "DATES" avec la combinaison Cdate() & Format
Exemple :
 CDate(Format(Now(), "dd/mm/yyyy"))

De cette manière mes dates ne se retrouvent pas "inversées".

Enfin.. le principal est d'arriver au bon résultat.

Bonne continuation

Cordialement,
Jordane,
3
Stardust31 Messages postés 50 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 29 novembre 2010
6 avril 2010 à 17:55
Merci du coup de main.
après 7 jours de réflexion (et pas 7 ans...) et de tentative et de résultats bizarres...
j'ai réussi à faire ce que je voulais (presque... je me suis adapté). c'est peut-être pas très propre, mais bon...

en final, j'ai transformé mes dates en aaaa / mm (ex : 2010 / 10).
y a truc que je n'ai pas compris avec vba c'est que pour certaines dates en jj/mm/aaaa j'arrive à obtenir mm-aaaa en format texte, puis avec d'autre j'obtiens mm/jj/aaaa .... dans la même colonne
ex : ma date est 10/04/2010 , elle devient 01/10/2010...
trop fort vba ...

Stardust
0
Stardust31 Messages postés 50 Date d'inscription lundi 6 mars 2006 Statut Membre Dernière intervention 29 novembre 2010
6 avril 2010 à 19:43
vba, m...o...t, notre ami Bill... en tout on doit faire chauffer les neurones...

mais j'ai pas tout dit tout à l'heure
quand je crée mon TCD à la mano, j'ai les dates classées croissantes , ex : avril-2010 , mai-2010, juin-2010...etc
quand je le fais faire par macro, c'était classé par mois : avril-2010, avril-2011, décembre-2010, décembre-2011 .
donc j'ai fait passer l'année avant le mois...


à bientôt

Cordialement,
Stardust
0
Rejoignez-nous