Microsoft 365 VBA_Copier coller selon des critères dans deux menus déroulants

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Altfkat

XLDnaute Nouveau
Bonjour,

Je suis novice en VBA et je me suis lancé dans un projet ayant pour but de classer des informations, puis de les afficher sur une feuille selon les critères sélectionnés.
Ces critères sont indiqués grâce à deux listes déroulantes situées en C18 et E18 de la feuille "Consultation REX".
Selon les critères sélectionnés, le but est d'afficher uniquement les lignes enregistrées sur la feuille "Bibliothèque" donc le texte en colonne C et D correspond aux "filtres" de mes listes déroulantes.

En définitive, l'idée est d'afficher un message si quand on sélectionne un filtre, aucune donnée ne correspond dans le tableau bibliothèque, et sinon d'afficher les lignes dont les données correspondent.

J'avais essayé un premier programme qui fonctionnait pour l'affichage selon un seul filtre mais je n'ai pas réussi à le faire fonctionner pour deux. Après modification, je n'arrive toujours pas à faire fonctionner mon fichier.

Pouvez-vous m'éclairer sur la marche à suivre ? Etant novice, j'ai surement glissé une erreur évidente mais je n'arrive plus à m'y retrouver à force de tourner en rond sur mon code.

J'ai joint mon fichier pour que vous puissiez situer plus facilement les informations dont je parle.

Merci d'avance,
 

Pièces jointes

Solution
Hello

voici une nouvelle version qui exploite les Tables Structurées
le tableau de résultat du filtre (feuille consult) est sous forme de Table Structurée (TS)

j'ai déplacé le code dans un module standard pour en faire des sub appelées par les boutons
deux sub de raz
1er: RAZ du tableau de filtrage
2eme: RAZ des critères

j'ai ajouté des commentaires dans le code pour expliquer
Merci à vous deux pour vos retours.
J'ai testé les fichiers rapidement et ils ont l'air de fonctionner comme attendu.
Je vais réaliser quelques tests plus poussés demain et voir si j'ai quelques questions sur leurs fonctionnement.
Encore merci, bonne soirée.
 
Hello

pas eu le temps de regarder la solution de Sylvanu
mais je poste quand meme
1) modification des données de la bibilo en Table structurée (t_Biblio)
2) modification de la macro commandbutton2
3) création de la macro commandbutton3
Bonjour,

J'ai pu tester les deux solutions et celle-ci faisant un filtre sur les 3 critères (C18,D18 et E18) en fait même plus que je voulais au départ ! Merci beaucoup c'est encore mieux que ce que je voulais faire.
Juste une question, si on veut filtrer les données mais que la valeur du filtre n'apparait pas dans le tableau bibliothèque, est-il possible de renvoyer un message " Aucune donnée avec ces critères n'a été trouvée" ?
J'ai essayé d'intégrer ce fonctionnement ensuite mais je n'arrive pas à faire fonctionner le Msgbox comme je voudrais.

Est-ce qu'il faut afficher la msgbox selon la comparaison de NbCrit ?
J'avoue que comme je ne comprends pas le programme à 100%, je ne sais pas comment gérer ca.
Au passage, peux-tu m'expliquer le passage suivant dans le VBA :

Crit(1) = Range("C18")
NbCrit = IIf(Crit(1) <> "", 1, 0)
Crit(2) = Range("D18")
NbCrit = NbCrit + IIf(Crit(2) <> "", 1, 0)
Crit(3) = Range("E18")
NbCrit = NbCrit + IIf(Crit(3) <> "", 1, 0)

Je ne comprends pas le fonctionnement des critères.

Merci.
 
Hello

voici une nouvelle version qui exploite les Tables Structurées
le tableau de résultat du filtre (feuille consult) est sous forme de Table Structurée (TS)

j'ai déplacé le code dans un module standard pour en faire des sub appelées par les boutons
deux sub de raz
1er: RAZ du tableau de filtrage
2eme: RAZ des critères

j'ai ajouté des commentaires dans le code pour expliquer
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour