Formule Excel: première correspondance dans la plage avec un caractère générique -

Table des matières

Formule générique

=INDEX(range,MATCH(val&"*",range,0))

Sommaire

Pour obtenir la valeur de la première correspondance dans une plage à l'aide d'un caractère générique, vous pouvez utiliser une formule INDEX et MATCH, configurée pour une correspondance exacte.

Dans l'exemple illustré, la formule en F5 est:

=INDEX(B5:D5,MATCH(E5&"*",B5:D5,0))

Explication

En travaillant de l'intérieur vers l'extérieur, MATCH est utilisé pour localiser la position du premier match dans la plage B5: D5. La valeur lookup_value est basée sur la valeur de B5 jointe avec un astérisque (*) comme caractère générique, et match_type est défini sur zéro pour forcer une correspondance exacte:

MATCH(E5&"*",B5:D5,0)

E5 contient la chaîne "calc" donc, après concaténation, la fonction MATCH ressemble à ceci:

MATCH("calc*",B5:D5,0)

et renvoie 3 à l'intérieur de l'index comme "row_num":

=INDEX(B5:D5,3)

Bien que la plage B5: D5 soit horizontale et ne contienne qu'une seule ligne, INDEX récupère correctement le 3ème élément de la plage: "calc 1500".

Articles intéressants...