XL 2016 Formule recherche à choix multiple

Linda42

XLDnaute Occasionnel
Bonjour,

Je n'arrive pas à expliquer ce que je souhaite. Tout est dans le fichier. Je voudrais que soit reporté dans la colonne le nom du candidat qui a la note attribuée 1.

Merci a tous
 

Pièces jointes

  • Formule recherche.xlsx
    9.6 KB · Affichages: 12
Solution
Bonjour

pas sur d'avoir compris

une proposition en PJ
1) tableau transformé en Table structurée
2) syntaxe Lot 1 Lot 2 harmonisée (suppression des espaces et du :)
3) formule avc Sommeprod pour récuperer le candidat de chaque lot

Linda42

XLDnaute Occasionnel
Re, Merci,
Je tente et je vous dis. cette solution me parait la plus adapter car pas de VBA. Il faudra juste que je demande à mes collaborateur de télécharger excel 2019 car il sont sur 2016.

A toute
Re
@Linda42,
Il me semble que la fonction CONCAT() est disponible dans EXCEL2019 alors en transformant ta liste en tableau structuré nommé tbBdD tu peux essayer de définir le nom suivant :
Récipiendaires=CONCAT(SI((tbBdD[Numéro et Intitulé du Lot]=tbBdD[[#Cette ligne];[Numéro et Intitulé du Lot]])*(tbBdD[Attribuée]=1);INDEX(tbBdD[Candidat];LIGNE(tbBdD[Attribuée]))&", ";""))

Et de mettre dans ta colonne "Candidat retenu" la formule suivante :
Code:
=STXT(Récipiendaires;1;NBCAR(Récipiendaires)-2)
(pas besoin de valider par CTRL MAJ ENTREE car la formule matricielle est contenue dans un nom défini)

(Le fichier joint a été enregistré avec une version 2024 d'EXCEL)

À bientôt
La formule est fausse, non ? Pour le lot 1, je devrais avoir dans la colonne candidat retenu ORB,TER, or dans votre tableau, j'ai BIO,BIO
 

AtTheOne

XLDnaute Accro
Supporter XLD
La formule est fausse, non ? Pour le lot 1, je devrais avoir dans la colonne candidat retenu ORB,TER, or dans votre tableau, j'ai BIO,BIO
Sur ma version (2024) c'est bon, j'essayerai tout à l'heure de trouver une formule qui passe avec 2007 (l'autre version dont je dispose) mais ça risque d'être un peu coton.
As-tu ouvert mon fichier exemple ? Ou as-tu recréer le nom et la formule sur ton fichier ?
À bientôt
 

Linda42

XLDnaute Occasionnel
Sur ma version (2024) c'est bon, j'essayerai tout à l'heure de trouver une formule qui passe avec 2007 (l'autre version dont je dispose) mais ça risque d'être un peu coton.
As-tu ouvert mon fichier exemple ? Ou as-tu recréer le nom et la formule sur ton fichier ?
À bientôt
A l'ouverture de ton fichier :
1733824675736.png

Sur mon précédent post, le résultat était du à un filter sur le lot 1

Et j'ai tenter la méthode sur mon fichier mais même problématique
 

vgendron

XLDnaute Barbatruc
Re,
si je ne dis pas de betise, Power Query est intégré par défaut dans ta version d'excel.. (pas sur en fait)
l'avantage de PQ (dans le cas présent), c'est que tes utilisateurs n'ont pas besoin de connaitre;. juste un clic droit actualiser..

et comme j'ai réussi à faire ce que je voulais: mettre les résultats en liste, je poste :-D
PS: j'ai choisi de mettre un espace comme séparateur entre chaque candidat retenu.. on peut changer

je poste également le lien vers la video qui m'a permis d'aller au bout
 

Pièces jointes

  • Formule recherche.xlsx
    22.8 KB · Affichages: 3

Linda42

XLDnaute Occasionnel
Re,
si je ne dis pas de betise, Power Query est intégré par défaut dans ta version d'excel.. (pas sur en fait)
l'avantage de PQ (dans le cas présent), c'est que tes utilisateurs n'ont pas besoin de connaitre;. juste un clic droit actualiser..

et comme j'ai réussi à faire ce que je voulais: mettre les résultats en liste, je poste :-D
PS: j'ai choisi de mettre un espace comme séparateur entre chaque candidat retenu.. on peut changer

je poste également le lien vers la video qui m'a permis d'aller au bout
Ok je regarde, Merci
 

AtTheOne

XLDnaute Accro
Supporter XLD
Re,
je crois que j'ai trouvé, j'utilisais le N° de la ligne dans la feuille pour extraire les valeurs au lieu du N° de ligne dans le tableau
La formule suivante devrait mieux fonctionner :
1733828357710.png

Récipiendaires=CONCAT(SI((tbBdD[Numéro et Intitulé du Lot]=tbBdD[@[Numéro et Intitulé du Lot]])*(tbBdD[Attribuée]=1);INDEX(tbBdD[Candidat];LIGNE(tbBdD[Attribuée])-LIGNE(tbBdD[#En-têtes]))&", ";""))
Quoique j'ai un petit doute sur l'interprétation matricielle de LIGNE(tbBdD[Attribuée]) dans ta version.
Dans la mienne cela renvoie la liste des N° de ligne de la plage considérée, je crains que dans la tienne cela ne renvoie que le N° de sa 1ère ligne.
1733828691971.png

Regarde et dis-moi si cela va mieux
 

Pièces jointes

  • Formule recherche AtTheOne bis.xlsx
    12.8 KB · Affichages: 2

Linda42

XLDnaute Occasionnel
Re,
si je ne dis pas de betise, Power Query est intégré par défaut dans ta version d'excel.. (pas sur en fait)
l'avantage de PQ (dans le cas présent), c'est que tes utilisateurs n'ont pas besoin de connaitre;. juste un clic droit actualiser..

et comme j'ai réussi à faire ce que je voulais: mettre les résultats en liste, je poste :-D
PS: j'ai choisi de mettre un espace comme séparateur entre chaque candidat retenu.. on peut changer

je poste également le lien vers la video qui m'a permis d'aller au bout
Parfait, effectivement, cette méthode répond à mon besoin.
 

Linda42

XLDnaute Occasionnel
Re,
je crois que j'ai trouvé, j'utilisais le N° de la ligne dans la feuille pour extraire les valeurs au lieu du N° de ligne dans le tableau
La formule suivante devrait mieux fonctionner :
Regarde la pièce jointe 1208734
Récipiendaires=CONCAT(SI((tbBdD[Numéro et Intitulé du Lot]=tbBdD[@[Numéro et Intitulé du Lot]])*(tbBdD[Attribuée]=1);INDEX(tbBdD[Candidat];LIGNE(tbBdD[Attribuée])-LIGNE(tbBdD[#En-têtes]))&", ";""))
Quoique j'ai un petit doute sur l'interprétation matricielle de LIGNE(tbBdD[Attribuée]) dans ta version.
Dans la mienne cela renvoie la liste des N° de ligne de la plage considérée, je crains que dans la tienne cela ne renvoie que le N° de sa 1ère ligne.
Regarde la pièce jointe 1208735
Regarde et dis-moi si cela va mieux
Je vais tester et je te dis
 

Discussions similaires

Statistiques des forums

Discussions
315 085
Messages
2 116 074
Membres
112 650
dernier inscrit
badi44