web-dev-qa-db-fra.com

Si deux cellules correspondent, retourne la valeur de la troisième

Voici une explication simple de mes problèmes.

Colonne A: Liste des numéros de commande 2300
Colonne B: Adresse électronique associée à un numéro de commande
Colonne C: Liste des 100 numéros de commande spécifiques pour lesquels j'ai besoin de l'adresse email pour

Je cherche donc à rechercher dans la colonne A une valeur qui correspond à C et à renvoyer l'adresse électronique de la colonne B dans une nouvelle colonne (D).

La formule actuelle fonctionne presque, mais au lieu de renvoyer l'adresse électronique où A correspondait à C, elle renvoie l'adresse électronique à partir de la même ligne.

=IF(ISERROR(MATCH(C2,A:A,0)),B2)    

J'ai essentiellement besoin de B2 dans la formule ci-dessus pour renvoyer la valeur de la même ligne qui correspond.

16
mn8809

Je pense que ce que tu veux est quelque chose comme:

=INDEX(B:B,MATCH(C2,A:A,0))  

Je devrais mentionner que MATCH vérifie la position à laquelle la valeur peut être trouvée dans A: A (étant donné le 0, ou FALSE, paramètre, il recherche uniquement une correspondance exacte et, étant donné sa nature, seule la première instance trouvée) then INDEX renvoie la valeur à cette position dans B: B.

42
pnuts

Tout ce que vous avez à faire est d’écrire une condition IF dans la colonne d comme ceci:

=IF(A1=C1;B1;" ")

Ensuite, appliquez simplement cette formule à toutes les lignes supérieures à celle-ci.

2
Alexey
=IF(ISNA(INDEX(B:B,MATCH(C2,A:A,0))),"",INDEX(B:B,MATCH(C2,A:A,0)))

Renverra la réponse souhaitée et supprimera également le résultat #N/A qui apparaîtrait si vous ne parveniez pas à trouver un résultat car il n'apparaissait pas dans votre liste de recherche.

Ross

2
Ross