Extraire une liste d'après une base de donnée

Bonjour à tous,

J’aurais besoin d’aide car je ne parviens pas à développer une formule sur mon fichier excel.
Vous trouverez ci-joint un fichier d’affectation des étudiants en stage.
Dans la feuille « liste des terrains de stage », j’ai créé un encadré en T3 dans lequel je souhaites récupérer la liste de tous les étudiants en stage sur une période donnée dans un lieu donné.
Pour cela, on sélectionne dans les menus déroulant le type de stage, le lieu et la période (ici en T5, T6 etT7). Devrait apparaitre ensuite en U9 la liste de tous les étudiants concernés.
J’ai pensé donc utiliser les formules INDEX et EQUIV, mais je me perds dans les formules, je n’y arrive pas.
Dans cet exemple, il faudrait récupérer la liste des étudiants concernés dans la feuille « STAGES PROMO 2021-25 » : nom prénom en B et C et le stage est en E.

Pourriez-vous m’aider à atteindre cet objectif ?

Merci d’avance.
parcours de stage 2021-25.xlsx (87,1 Ko)

Bonjour

J’ai réalisé une fonction qui te permets de récupérer les étudiants qui sont en correspondance avec le stage en U5

Testes déjà en faisant différents choix dans la liste de cette cellule

On pourra affiner la sélection en rajoutant les critères d’autres cellules notamment celle de T5
Il n’y a absolument rien (ni liste ni donnée) en T6 et T7

Si le résultat te convient pour déjà les différents choix en cellule U5 je l’étendrais à d’autres filtres de cellules qu’il faudra bien déterminer

Le fichier avec déjà le filtre en U5

Les résultats sont dans l’encart prévu mais de manière aléatoire concernant leur disposition c’est selon la rapidité de chaque formule de chaque cellule

A toi d’estimer si c’est malgré tout présentable

parcours de stage 2021-25 (3).xlsm (94,6 Ko)

Fichier de type .xlsm nécessaire pour le fonctionnement de la fonction que j’ai réalisée
A ne pas modifier

Merci, si je comprends bien tu as réalisé un macro.
Ca a l’air de fonctionner merci ! Il n’est pas nécéssaire de réaliser un filtre en U5 car cela permet juste d’affiner le menu déroulant.
En revanche la case V5, doit permettre de changer la colonne de recherche :
S1 : =‹ STAGES PROMO 2021-25 ›!$E$6:$E$70
S2 : =‹ STAGES PROMO 2021-25 ›!$H$6:$H$70
S3 : =‹ STAGES PROMO 2020-24 ›!$K$6:$K$70
S4 : =‹ STAGES PROMO 2020-24 ›!$N$6:$N$70
S5 : =‹ STAGES PROMO 2019-23 ›!$Q$6:$Q$70
S6 : =‹ STAGES PROMO 2019-23 ›!$T$6:$T$70
S8 : =‹ STAGES PROMO 2018-22 ›!$W$6:$W$70

La présentation me semble tout a fait correcte !

Bonsoir

Merci pour ce retour

« Ca a l’air de fonctionner merci ! Il n’est pas nécéssaire de réaliser un filtre en U5 car cela permet juste d’affiner le menu déroulant. »

Quelles sont les filtres à utiliser ???

« En revanche la case V5, doit permettre de changer la colonne de recherche : »

Le choix de l’onglet et de la plage s’effectue dans la formule

=valeurrecherchée($U$5;‹ STAGES PROMO 2021-25 ›!$E$6:$E$59)

sur cette partie :

‹ STAGES PROMO 2021-25 ›!$E$6:$E$59

Donc en résumé qu’attends tu de mon aide ?

Bonjour

Je propose cette version qui intègre toutes les plages de S1 à S8 et donc ramène les données (nom et prénom) sur la base du choix du stage effectué en cellule U5 et de V5

Faute d’élément sur le stage S7 je lui ai inclus la même plage que pour S6

Attention tout changement de colonnes pour toutes ces plages nécessitera une adaptation du code de la fonction

Fais des tests sur différents choix pour ces 2 cellules

Certains onglets pour les plages désignées sont vides de données ne pas oublier de les compléter avant tout test

Fais moi un retour

parcours de stage 2021-25 (4).xlsm (96,7 Ko)

Bonjour,

Merci beaucoup, je suis en train de tout tester, ça a l’air de bien fonctionner.
C’est super !

Merci pour ton retour
Attention donc aux colonnes des plages qui tel que j ai conçu la fonction ne peuvent être modifiées donc doivent être maintenu tel que tu les as décrit :

S1 : =‹ STAGES PROMO 2021-25 ›!$E$6:$E$70
S2 : =‹ STAGES PROMO 2021-25 ›!$H$6:$H$70
S3 : =‹ STAGES PROMO 2020-24 ›!$K$6:$K$70
S4 : =‹ STAGES PROMO 2020-24 ›!$N$6:$N$70
S5 : =‹ STAGES PROMO 2019-23 ›!$Q$6:$Q$70
S6 : =‹ STAGES PROMO 2019-23 ›!$T$6:$T$70
S8 : =‹ STAGES PROMO 2018-22 ›!$W$6:$W$70

S1 colonne E
S2 colonne H
S3 colonne K
S4 colonne N
S5 colonne Q
S6 colonne T
S7 colonne T
S8 colonne W

La plage de lignes pour ces colonnes peux être modifiée dans la formule dans la partie qui concerne celle-ci
L onglet peux aussi être modifié toujours dans la formule dans la partie concernée

Si ce fonctionnement est un handicap d autre peuvent être envisagé notamment pour les colonnes attribuées pour chaque plage

À toi de me dire

Au plaisir de te lire

Normalement ça ne devrait pas pas bouger. Au pire j’ai compris la logique du code et je pense pouvoir le bidouiller au besoin.
Merci encore.

Je te transmets une autre version qui s’affranchit de la contrainte des colonnes
Juste la mise à jour d’un onglet supplémentaire créé « Paramètres » qui fait le lien entre chaque stage de S1 à S8 et le nom de l’onglet correspondant
Ainsi tu peux utiliser n’importe quelle colonne pour les différentes plages ayant l’onglet à utiliser pour récupérer le nom et prénom en colonne A et B de celui-ci

Testes et dis moi

parcours de stage 2021-25 (5).xlsm (100,1 Ko)

Merci. Il y avait une petite erreur de colonne dans le code que j’ai corrigé (A&B au lieu de B&C).

Bonsoir
Tu l’as corrigé conformément à ton attente c’est l’essentiel
Tout fonctionne selon tes souhaits c’est le principale
Au plaisir de te retrouver

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.