MATCH
Description
Recherche une valeur dans la liste précisée (tableau unidimensionnel) et renvoie la position de la valeur. Vous pouvez mettre en correspondance des valeurs numériques, des valeurs logiques ou des chaînes de texte. Avec des chaînes de texte, vous pouvez mettre en correspondance des modèles : utilisez un astérisque (*) pour mettre en correspondance n’importe quel nombre de caractères; Utilisez un point d’interrogation (?) pour mettre en correspondance n’importe quel caractère.
Syntaxe
MATCH(
lookup_value
,
lookup_array
, [
match_type
])
- lookup_value: Valeur à rechercher.
- lookup_array: Tableau à rechercher.
- match_type: Indique le critère à utiliser lors de la recherche.
- 1 ou vide = rechercher la valeur la plus élevée inférieure ou égale àlookup_value.lookup_arrayLes données doivent être triées par ordre croissant. La valeur par défaut est 1.
- 0 = correspondance exacte aveclookup_value. Avec les chaînes de texte, vous pouvez utiliser l’astérisque (*) et le point d’interrogation (?) pour faire correspondre les modèles.
- -1 = rechercher la plus petite valeur supérieure ou égale àlookup_value.lookup_arrayLes données doivent être triées par ordre décroissant.
Exemple
Les exemples sont fondés sur ce classeur :
A | B | C | D | E | F | G | H | |
|---|---|---|---|---|---|---|---|---|
1 | Supervisory Org
| Cost Center
| Company
| Location
| Jan (HC) 2017
| Feb (HC) 2017
| Mar (HC) 2017
| PEA KEY
|
2 | Finance | CC-1 Finance | GMS | Pleasanton | 2 | 2 | 2 | FinanceCC-1 FinanceGMSPleasanton |
3 | Product Management | CC-2 Product | GMS | Boulder | 0 | 1 | 2 | Product ManagementCC-2 ProductGMSBoulder |
4 | Development | CC-3 Development | GMS-CA | Toronto | 2 | 2 | 2 | DevelopmentCC-3 DevelopmentGMS-CAToronto |
5 | Sales | CC-4 Sales | GMS-UK | London | 1 | 2 | 3 | SalesCC-4 SalesGMS-UKLondon |
6 | Sales | CC-4 Sales | GMS-UK | Toronto | 0 | 0 | 1 | SalesCC-4 SalesGMS-UKToronto |
7 | 5 | 7 | 9 |
Le résultat de
=MATCHE("CC-3 Development",B2:B6)
est 3
.
Le résultat de
=MATCHES("*Sales*",B2:B6,0)
est 4
.
Vous pouvez combiner les fonctions MATCH et INDEX pour renvoyer la valeur correspondante au lieu de la position de la valeur.
Pour la formule :
=INDEX(G2:G6,MATCH("*Sales*",B2:B6,0))
D’abord, MATCH recherche dans la plage B2:B6 la chaîne « *Sales* » (à l’aide d’un caractère générique) et renvoie la position de la valeur, qui est
4
. Alors INDEX utilise 4
comme deuxième argument et renvoie la valeur en position 4 de G2:G6, qui est 2
.
Remarques
- S’il existe plusieurs correspondances, la fonction renvoie la position de la première.
- Exemples de caractères génériques lors de la recherche de modèles de texte :
- Rechercher*00pour trouver des valeurs qui se terminent par deux zéros.
- Rechercher1?5pour rechercher toutes les valeurs à trois chiffres qui commencent par 1 et se terminent par 5.
- Si la valeur à rechercher contient un * ou ?, faites-la précéder d'un tilde (~). Exemple : recherchez~*N/A~*pour trouver le texte*N/A*.
- Nous vous recommandons d’utiliser la fonction MATCHEXACT plutôt que MATCH lorsque cela est possible, pour obtenir une meilleure performance.
Fonctions associées
MATCHEXACT
MHLOOKUP
MVLOOKUP