Checkbox à coches multiples et filtre TCD

Bonjour tout le monde,

Je cherche désespérément quelqu'un qui pourra me dire comment, dans excel 2007 et via vba, créer une checkbox à coches multiples qui apparaît lorsqu'on double-clique sur telle cellule et qui, une fois une ou plusieurs coches sélectionnées, alimente un filtre TCD sur une autre page.

Avec l'aide d'excel-pratique, j'ai pu créer 3 listes de choix (via validation de données) qui, avec des codes vba, alimentre les filtres d'un TCD sur un autre onglet.

Je n'arrive pas à joindre le fichier en PJ car > à 300 Ko (limite du site).

Ci-dessous donc le code vba pour alimenter les 3 filtres d'un TCD avec les sélections de 3 listes de choix.

Sub Choix_3()

' alimente le filtre "UM (libellé court)" du TCD1 de la feuille TCD avec la valeur choisie en cellule M1 de la feuille TABLEAU DE BORD
Application.ScreenUpdating = False
        Sheets("TCD").PivotTables("TCD1").PivotFields("UM (libellé court)"). _
        ClearAllFilters
    Sheets("TCD").PivotTables("TCD1").PivotFields("UM (libellé court)"). _
        CurrentPage = IIf(Sheets("TABLEAU DE BORD").Range("M1").Value = "", "(All)", Sheets("TABLEAU DE BORD").Range("M1").Value)

' alimente le filtre "Code heure (libellé)" du TCD1 de la feuille TCD avec la valeur choisie en cellule M2 de la feuille TABLEAU DE BORD
Application.ScreenUpdating = False
        Sheets("TCD").PivotTables("TCD1").PivotFields("Code heure (libellé)"). _
        ClearAllFilters
    Sheets("TCD").PivotTables("TCD1").PivotFields("Code heure (libellé)"). _
        CurrentPage = IIf(Sheets("TABLEAU DE BORD").Range("M2").Value = "", "(All)", Sheets("TABLEAU DE BORD").Range("M2").Value)

' alimente le filtre "Mois" du TCD1 de la feuille TCD avec la valeur choisie en cellule M3 de la feuille TABLEAU DE BORD
Application.ScreenUpdating = False
        Sheets("TCD").PivotTables("TCD1").PivotFields("Mois"). _
        ClearAllFilters
    Sheets("TCD").PivotTables("TCD1").PivotFields("Mois"). _
        CurrentPage = IIf(Sheets("TABLEAU DE BORD").Range("M3").Value = "", "(All)", Sheets("TABLEAU DE BORD").Range("M3").Value)

End Sub

Merci.

Erwan

Bonjour,

Tu as plusieurs solutions pour nous faire parvenir un fichier :

1 - Tu le compresses

2 - Tu l'enregistres au format xlsb

3 - Tu passes par exemple par :

http://www.cjoint.com/index.php

Voici le fichier compressé.

Re,

Un début de réponse pour rendre ton code fonctionnel.

Ne pas fusionner les cellules

Bonjour Jean-Eric,

Je dois avouer que je ne voie pas trop où je dois aller.

De mon point de vue, sachant que je ne maîtrise pas VBA, que les cellules qui alimentent les filtres du TCD soient fusionnées ou non, c'est pareil, ça marche.

Mais, il y a peut être une subtilité qui m'échappe.

Bonjour,

1ère question : le code fourni fonctionne-t-il?

2ème question: que veux-tu faire maintenant?

cdlt.

Le code vba que j'ai fourni au début de la question (celui qui permet d'alimenter 3 filtres d'un TCD en fonction de la sélection de 3 listes déroulantes) marche impec (j'avais oublié de dire que chaque liste déroulante ne permet de sélectionner qu'une seule valeur).

Ton code (une fois les cellules défusionnées), marche très bien aussi.

Je voudrais, au lieu de listes déroulantes à choix unique, des checkboxs à choix multiples ou des listes déroulantes à choix multiples qui alimentent un filtre de tableau croisé dynamique.

Si tu sais comment faire, t'es un chef !

Re,

Ton TCD te permet de faire ce que tu veux.

Pourquoi compliquer?

Cdlt.

En fait, il s'agit toujours de la grosse étude pour laquelle tu m'as aidé en me fournissant un code vba permettant d'appliquer les sélections des filtres du TCD1 d'un feuille F1 à tous les autres TCD de cette même feuille F1.

Chaque TCD de la feuille F1 est rattaché un graphique et tous les graphiques se trouvent sur une feuille F2.

Sur la feuille F2, je sélectionne 3 données à l'aide de 3 listes déroulantes de choix (à choix unique donc) et grâce au code vba exposé au début de ce sujet, le TCD1 de la feuille F1 se modifie.

Ensuite, grâce à ton code vba, les filtres du TCD1 s'appliquent à tous les TCD de la feuille F1 et, du coup, les graphiques de la feuille F2 se modifient.

Le problème, c'est que ceux à qui l'étude est destinée souhaitent pouvoir sélectionner, non pas 1 seule donnée mais 1 ou plusieurs données dans chacune des 3 listes déroulantes.

Est-ce possible selon toi ?

Re,

Depuis le début, on parle que d'un TCD.

Je ne comprenais pas l'objectif, mais bon.

Peux-tu donc joindre un fichier représentatif

Je ne te cache que l'histoire des sélections multiples vont poser problème.

Cdlt.

Ci-joint un fichier

Rechercher des sujets similaires à "checkbox coches multiples filtre tcd"