Description
Cette fonction permet de rechercher un élément spécifié dans une plage de cellules et de renvoyer le numéro de ligne de cet élément dans la plage. Pris en charge dans les chaînes.
Cette fonction est utile pour trouver le numéro de ligne d'une valeur particulière dans une liste ou un tableau.
Syntaxe
MATCH(valeur_du_regard, tableau_du_regard, [type_du_regard])
Les entrées
Cette fonction accepte les arguments suivants :
| Nom | Obligatoire | Description | Entrée valide |
|---|---|---|---|
valeur_de_recherche |
Oui | La valeur que vous souhaitez trouver dans le tableau de recherche. | Une référence de cellule, une plage de cellules, un nombre, une chaîne de texte ou une formule qui aboutit à l'un de ces éléments. |
tableau_de_recherche |
Oui | La plage de cellules recherchées. | Une plage de cellules contenant des valeurs de recherche possibles. |
match_type |
Non | Spécifie comment Excel fait correspondre la valeur de référence avec les valeurs du tableau de référence. | 1 (correspond à la plus grande valeur inférieure ou égale à lookup_value)0 (correspond à la première valeur exactement correspondant à lookup_value-1 (correspond à la plus petite valeur supérieure ou égale à lookup_value)La valeur par défaut est 1 si elle est omise. |
Exemples
Données d’échantillon
| A | B | |
|---|---|---|
| 1 | 10 | Apple |
| 2 | 20 | Banane |
| 3 | 30 | Cerise |
| 4 | 40 | Date |
Exemples de formules
| Cas d'utilisation | Formule | Explication et résultat |
|---|---|---|
| Trouver la position relative d’une valeur exacte dans une liste. | =MATCH(30,A1:A4,0) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, cette formule renvoie 3. |
| Trouver la position relative d’une chaîne de texte dans une liste. | =MATCH("Cerise",B1:B4,0) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, la formule renvoie 3. |
| Trouvez la position relative de la plus grande valeur inférieure ou égale à une valeur de référence dans une liste triée. | =MATCH(25,A1:A4,1) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, cette formule renvoie 2. |
| Trouvez la dernière valeur alphabétique qui est inférieure ou égale à une valeur spécifiée. | =MATCH("D",B1:B4,1) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, cette formule donne 3. |
| Trouvez la position relative de la plus petite valeur supérieure ou égale à une valeur de référence dans une liste triée. | =MATCH(15,A1:A4,-1) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, cette formule renvoie #N/A. |
| Trouvez la dernière valeur numérique d’une colonne. | =MATCH(9,9E+307, B :B) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, la formule renvoie l’erreur #N/A. |
| Retourne la valeur de la dernière cellule numérique d’une colonne. | =INDEX(B :B, MATCH(9,9E+307, B :B)) |
Cette formule fonctionne de la manière suivante :
Pour cet ensemble de données, la formule renvoie #N/A. |
Notes
- MATCH renvoie la position de l'élément trouvé sous forme de nombre.
- Si match_type est 0, MATCH trouve la première valeur exactement égale à
lookup_value. - Si le tableau de consultation n'est pas trié comme prévu, MATCH peut renvoyer des résultats incorrects sans indication d'erreur. En effet, la fonction s'arrête de chercher dès qu'elle trouve une valeur qui satisfait à la condition, en supposant qu'aucune meilleure correspondance ne suivra en raison du tri prévu. Si vous n'êtes pas sûr du tri de vos données, il est plus prudent d'utiliser "0" (correspondance exacte) comme
match_type, ou de trier explicitement vos données avant d'utiliser MATCH.- Si match_type est 1, MATCH recherche la plus grande valeur inférieure ou égale à
lookup_value. Le tableau de consultationdoit être en ordre croissant. - Si match_type est -1, MATCH recherche la plus petite valeur supérieure ou égale à
lookup_value. Le tableau de consultationdoit être en ordre décroissant.
- Si match_type est 1, MATCH recherche la plus grande valeur inférieure ou égale à
- Si MATCH ne trouve pas de correspondance, il renvoie l'erreur #N/A.
- MATCH est insensible à la casse.
Astuces
- Si vous n'obtenez pas les résultats escomptés, vérifiez que votre
lookup_arrayest correctement trié pour lematch_typespécifié. - Vous pouvez utiliser MATCH avec INDEX pour créer une formule de recherche puissante et plus souple que VLOOKUP. La page Using INDEX-MATCH to create flexible lookups fournit un exemple.
- Vous pouvez combiner MATCH avec d'autres fonctions telles que MIN, MAX, ou AVERAGE pour trouver la position de valeurs spécifiques dans une plage.