Mettre en forme un tableau croisé dynamique

Juju93 -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je souhaite que l'etiquete de ligne d'un tableau croissé dynamique soit séléctionnée en fonction de la valeur d'une cellule.

Un exemple, parce que je pense ne pas etre trés claire :

J'ai un TCD avec en étiquete de ligne des nom d'entreprise que je peu cocher ou decocher si je veu les voir afficher ou non.
Sur une autre feuille de mon classeur, j'ai un menu deroulant me permettant de selectionner une entreprise.

Je voudrai que mon TCD m'affiche les info relative à cette entreprise sans avoir à cocher ou decocher la case de l'entreprise dans mon TCD

Si je ne suis pas clair posez moi toute les question que vous voulez.

D'avance merci pour vos réponse.
A voir également:

1 réponse

eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonjour,

Faisable uniquement en vba.
Tu nommes la cellule recevant le nom de l'entreprise sélectionnée 'EntSelect'
et dans cette feuille de selection tu colles le code suivant:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i As Long
    If Target.Address <> [EntSelect].Address Then Exit Sub
    With Sheets("Feuil4").PivotTables("Tableau croisé dynamique1").PivotFields("entreprise")
        .PivotItems([EntSelect].Value).Visible = True
        For i = 1 To .PivotItems.Count
            If .PivotItems(i).Name <> .PivotItems([EntSelect].Value).Name Then .PivotItems(i).Visible = False
        Next i
    End With
End Sub

Bien sûr dans Sheets("Feuil4").PivotTables("Tableau croisé dynamique1").PivotFields("entreprise") il faut adapter les noms aux noms de ton TCD
Ex:
http://www.cijoint.fr/cjlink.php?file=cj200810/cijXjLUhTP.xls

eric
0