[RESOLU] VBA - Filtrer tableau avec plusieurs choix dans une colonne

~ Arnaud ~

XLDnaute Nouveau
Bonjour,
Dans mon classeur excel j'ai un tableau principal (sous forme de tableau) que je peux filtrer comme je le souhaite quand je suis sur la feuille.

Mais mon problème c'est que j'ai développé une application vba par laquelle j'aimerais pouvoir imprimer (via un userform que j'ai appelé éditer...) mon tableau après avoir sélectionné par exemple plusieurs noms dans la colonne qui contient les noms des instructeurs qui suivent les dossiers.

J'ai essayé en enregistrant la macro mais je bute... même avec la sélection d'un seul critère !

Cela fait plusieurs semaines que j'essai alors si quelqu'un pouvait m'aider... Ce serait super.

Je vous remercie.
Arnaud.
 

Pièces jointes

  • TDSI - Version anonymisée.xlsm
    5 MB · Affichages: 160

~ Arnaud ~

XLDnaute Nouveau
Bonjour,
J'ai voulu faire court mais apparemment ça l'était trop... Désolé.

J'ai donc une feuille dans mon classeur que j'ai joint dans mon premier post, qui se nomme "Instructions".
Il comporte un grand tableau sous format tableau (il se nomme "TableauInstructions").
Les en-têtes de ce tableau sont sur la ligne 5.
Chaque ligne du tableau correspond à un dossier traité.
Il y a un numéro d'identifiant unique dans la colonne A du tableau.
Au boulot on a besoin d'imprimer ce tableau très régulièrement en ayant au préalable filtré les données du tableau.

J'ai développé un projet vba avec des userforms qui permettent de gérer ce tableau de manière plus sympathique. Ajouter un dossier, modifier/consulter un dossier, supprimer un dossier....
Je souhaite créer un userform éditions dans lequel je voudrais mettre dans des combobox (si on peut sélectionner plusieurs éléments) les différentes listes correspondantes aux filtres du tableau.
Au final, je souhaiterais pouvoir filtrer par nom de l'instructeur, par date de présentation du dossier en comité, en bref par les différents filtres possibles du tableau.

Par exemple, je veux imprimer le tableau en ayant sélectionné dans le filtre de la colonne "L" qui correspond au nom du gestionnaire des dossiers, plusieurs noms :
- Arnaud DURAND
- DUPOND
Je souhaite donc que le filtre ainsi sélectionné filtre le tableau en ne laissant que les lignes avec comme instructeur Arnaud DURAND et DUPOND...

Ensuite je clique sur un commandbutton pour imprimer le tableau sur lequel auront été appliquées les filtres sélectionnés dans le userform Editions.

Ce que je n'arrive pas à faire c'est effectuer une sélection multiple dans combobox si cela est possible (sinon ce sera une listbox j'imagine) qui serait sur un userform et d'appliquer cette sélection aux filtres de mon tableau.

Voilà. J'espère que c'est assez compréhensible...
Merci
Arnaud
 

~ Arnaud ~

XLDnaute Nouveau
Bonjour Boisgontier,
Merci pour cette réponse.
Je la garde de côté mais je pense qu'elle ne correspond pas à ce que je cherche aujourd'hui pour l'application de filtres dans mon tableau. en tous cas avec le peu de connaissances que j'ai en VBA je ne vois pas...
Mais l'idée c'est une piste et je travaillerai dessus dans un deuxième temps si je ne trouve pas ce que je cherche.
En tous cas merci encore.
Arnaud
 

~ Arnaud ~

XLDnaute Nouveau
Bonjour Boisgontier,
Merci beaucoup, je pense que je vais pouvoir utiliser ton outils de sélection multicritères (avec plusieurs colonnes et plusieurs mots par colonne).
Merci beaucoup pour tes réponses.
Il faut que je travaille dessus pour le mettre en oeuvre sur mon fichier et je reviens pour dire si c'est OK.

Bonne journée et merci encore.
Arnaud
 

~ Arnaud ~

XLDnaute Nouveau
Bonjour Boisgontier,
Ton fichier fonctionne super bien ! et ce serait super si j'arrivais à le faire sur le mien.
J'ai travaillé toute la journée et la nuit d'hier dessus mais je n'arrive pas à le transposer sur mon fichier.
Je te joints mon fichier édulcoré.
J'ai mon tableau principal dans l'onglet "Instructions". J'ai laissé quelques lignes mais normalement il fait plus de 300 lignes et s'incrémente régulièrement.
J'ai ajouté un bouton pour appeler l'USF concerné sur ce même onglet juste pour te montrer ce que je vais avoir au final.
Pour ce qui est des champs de critères et de la formule que tu as placés au dessus de ton tableau je les ai mis dans un onglet à part "FormulesetCodes".

J'ai voulu essayer avec trois critères seulement comme dans ton exemple. (même si tu peux voir sur l'USF les autres filtres que je prévois de faire fonctionner).

Apparemment les critères s'ajoutent dans les colonnes jaunes de l'onglet FormulesetCodes (donc jusque là ça à l'air d'aller, mais après les filtres ne s'appliquent pas à mon tableau principal dans l'onglet Instructions.

Te serait-il possible de jeter un oeil s'il te plaît ?

Ce que je n'ai pas compris dans ton exemple :
- la plage nommée"Extraire" qui pointe sur Listes!D1 . Je ne vois pas où elle sert dans le filtrage !
- la plage nommée "Critère". Pareil je ne vois pas où elle sert dans le filtrage !
- le code placé dans l'onglet de ton tableau est-il indispensable ?
' Private Sub Worksheet_Change(ByVal Target As Range)
' If Not Intersect(Union(Range("critThematique"), Range("CritEtendue"), Range("CritDEmandeur")), Target) Is Nothing And Target.Count = 1 Then
' ' Extrait
' End If
' End Sub


Voilà merci pour tout.
Je vais continuer à travailler dessus.
Bonne journée.
Arnaud.
 

Pièces jointes

  • TDSI - XLD.xlsm
    3.4 MB · Affichages: 184

~ Arnaud ~

XLDnaute Nouveau
Bonjour Boisgontier !
Ca y est j'ai enfin réussi à le faire sur mon fichier avec tous mes critères. J'en ai 7 !
Cela fonctionne super bien sauf pour un seul de mes critères...
Mais bon ce n'est pas grave... Je suis déjà super content d'avoir réussi à le faire avec autant de critères sans plus d'explications.

En tous cas merci pour ton fichier exemple.
Grâce au forum j'ai fait tout ce que je voulais et mon application fonctionne très bien.
Je n'ai plus qu'à la paufiner....
A bientôt.
Arnaud
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 917
Membres
101 839
dernier inscrit
laurentEstrées