EXCEL - Rechercher un mot clé et retourner la valeur de la cellule d'en face

Résolu/Fermé
Mathieu38G Messages postés 24 Date d'inscription mardi 16 janvier 2007 Statut Membre Dernière intervention 15 octobre 2023 - Modifié le 11 oct. 2021 à 14:05
Mathieu38G Messages postés 24 Date d'inscription mardi 16 janvier 2007 Statut Membre Dernière intervention 15 octobre 2023 - 6 nov. 2021 à 12:19
Bonjour,

Je cherche une formule qui me permette, en fonction d'un mot clé en référence dans une cellule, que la commande me remonte la valeur de la cellule d'en face en guise de résultat de recherche.

Exemple un tableau avec ces valeurs :
A | B
Départements : Contact :
01 - 38 - 26 M. aaaa
75 - 91 - 93 Mme. Bbbb
57 - 54 - 55 M. cccc
13 - 83 - 06 Mme. Dddd
31 - 81 - 09 M. eeee
31 - 44 - 86 Mme. ffff

J'ai besoin de trouver le contact xxx en fonction du département indiqué, mais comme il y a plusieurs départements regroupés (par régions) les fonctions RECHERCHEx() ne fonctionnent pas pour moi (car il faudrait que je renseigne l'ensemble de la chaine de caractère de la cellule Ax).

Exemple : Rechercher(valeur"83";Dans la plage A2:A7;Afficher valeur cellule B en face de la ligne trouvée) => Résultat de la recherche "Mme. Dddd".

J'ai cherché à l'aide de toutes les commandes de type RECHERCHE() et TROUVE / CHERCHE etc, je n'ai pas eu le résultat attendu, ou ca a été de l'à peu près, ce qui n'est pas toujours bon pour chaque numéro de département indiqué en référence.

Merci beaucoup par avance pour votre aide.


Mathieu.


Configuration: Windows / Firefox 93.0
A voir également:

2 réponses

Mike-31 Messages postés 18306 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 14 février 2024 5 064
Modifié le 11 oct. 2021 à 14:24
Bonjour,

avec deux RECHERCHEV imbriquée, une pour rechercher la correspondance dans la cellule et extraire le contenu de la cellule ce qui alimentera la RECHERCHEV
dans mon exemple, en G2, cellule formatée en texte je saisis le département exemple 83 (a adapter bien sur)
=RECHERCHEV(RECHERCHEV("*"&G2&"*";A1:A15;1;0);A1:B15;2;0)


je te conseille de compléter la formule avec une gestion d'erreur si une correspondance n'est pas trouvée, et tu peux remplacer "pas de correspondance" par "" pour ne rien afficher
=SIERREUR(RECHERCHEV(RECHERCHEV("*"&G2&"*";A1:A15;1;0);A1:B15;2;0);"pas de correspondance")

A+
Mike-31

Je suis responsable de ce que je dis, pas de ce que tu comprends...
1
Mathieu38G Messages postés 24 Date d'inscription mardi 16 janvier 2007 Statut Membre Dernière intervention 15 octobre 2023 6
6 nov. 2021 à 12:19
Salut Mike-31,

Merci beaucoup pour ta réponse !

Navré de répondre si tard... j'ai du m'absenter quelques jours et laisser de côté mon script.

Je n'ai pas pensé que "*" avant et après la chaine de caractère à rechercher pouvait fonctionner, j'étais persuadé qu'il fallait que la valeur que je recherche soit affichée distinctement dans une cellule de classeur...

Donc en résumé :
En utilisant comme filtre de recherche pour la fonction "RECHERCHEV" : "*"&Num de département (par exemple)&"*", le fait de mettre les paramètres "*" avant et après la valeur de référence à rechercher permet de rechercher un mot ou une valeur précise au milieu d'un ensemble de mots ou caractères contenues dans une plage de cellule définie, ce qui permet d'avoir un résultat à partir d'une partie des caractères d'une cellule sans être obligé d'entrer toute la chaîne de caractères d'une cellule de la zone de référence.

Sinon, oui je mets toujours des "" pour les cas où la valeur n'est pas trouvé (pour éviter d'avoir comme valeur "FAUX"), sans nécessairement passer par SIERREUR, mais je le ferais dorénavant car plus pratique, vu qu'en général j'engage une autre condition quand la première condition est fausse, du genre :
SI("xx"=1;"C'est juste";SI("xx"=0;"c'est faux";SI("xx"="0,5";"Pas tout à fait juste";"")))... ce qui peut parfois donner des formules très longues suivant les calculs demandés.

Grâce à ta réponse, je viens d'apprendre en plus qu'on pouvait imbriquer 2 "RECHERCHEV" dans une même formule dans une cellule, ce qui va grandement m'aider pour la suite à l'avenir sur les différents script Excel que j'aurai à faire ;).

Merci beaucoup pour ton aide Mike !


Mathieu.
0