Sommaire
1.3 Rechercher une information : RECHERCHEV, RECHERCHEX, INDEX/EQUIV
Le tableau des absences contient un matricule ; le service, l'équipe et le poste sont dans la liste du personnel. Plutôt que de les recopier à la main (et de les laisser vieillir), on va les chercher par formule. Trois méthodes coexistent, et le choix dépend d'abord de la version d'Excel installée dans l'entreprise.
Deux tableaux reliés par une clé : le matricule
tPersonnel (feuille Paramètres)
| A | B | C | |
|---|---|---|---|
| 1 | Matricule | Service | Équipe |
| 2 | M0388 | Montage | Matin |
| 3 | M0412 | Usinage | Après-midi |
| 4 | M0501 | Expédition | Matin |
tAbsences (feuille Saisie)
| A | B | |
|---|---|---|
| 1 | Matricule | Service |
| 2 | M0412 | Usinage |
| 3 | M0388 | Montage |
La colonne « Service » de tAbsences n'est pas saisie : c'est une colonne calculée qui va chercher l'information dans tPersonnel. Si une personne change de service, il suffit de mettre à jour une seule ligne.
Une clé unique avant toute recherche
Toute fonction de recherche suppose une clé : une valeur qui identifie une ligne et une seule. Dans un fichier RH, ce sera le matricule ; dans un fichier d'atelier, le code du poste ou de la machine. Le nom de famille est une mauvaise clé : deux homonymes, une faute d'accent ou un nom d'usage suffisent à renvoyer la mauvaise personne.
- Unicité : une règle de mise en forme conditionnelle « valeurs en double » sur la colonne Matricule de tPersonnel signale immédiatement un doublon (chapitre 2.2).
- Même format des deux côtés : un matricule « 0412 » saisi comme nombre d'un côté (affiché 412) et comme texte de l'autre ne sera jamais trouvé. Les codes avec zéros de tête se saisissent en texte, ou avec un préfixe lettre comme dans nos exemples.
- Pas d'espace parasite : un export de logiciel ajoute parfois une espace finale ; la recherche exacte échoue alors avec
#N/A.
Ces trois vérifications règlent la grande majorité des « RECHERCHEV qui ne marche pas ». Le chapitre 3.2 revient sur le diagnostic de l'erreur #N/A.
RECHERCHEV : la plus connue, avec ses limites
RECHERCHEV cherche une valeur dans la première colonne d'une plage et renvoie la valeur d'une autre colonne de la même ligne, désignée par son numéro. Ses quatre arguments, dans l'ordre : la valeur cherchée, la plage, le numéro de la colonne à renvoyer, et le type de correspondance.
La formule cherche le matricule de la ligne dans la première colonne de tPersonnel et renvoie la 2e colonne (Service). Le dernier argument est décisif :
| 4e argument | Comportement documenté | Usage |
|---|---|---|
FAUX | Correspondance exacte ; #N/A si la valeur est absente | Matricule, code poste : toujours |
VRAI ou omis | Correspondance approximative ; suppose la 1re colonne triée par ordre croissant | Tranches de valeurs uniquement (zone 5) |
Deux autres limites : RECHERCHEV ne regarde que vers la droite (la clé doit être en première colonne de la plage), et le numéro de colonne est écrit en dur : insérer une colonne dans tPersonnel peut décaler le résultat. Les deux méthodes suivantes n'ont pas ces défauts.
RECHERCHEX : la méthode moderne (Excel 2021, 2024 et Microsoft 365)
- On désigne séparément la colonne où chercher et la colonne à renvoyer : la clé peut être n'importe où, à gauche ou à droite, et insérer une colonne ne casse rien.
- La correspondance est exacte par défaut (mode_correspondance = 0) : l'oubli d'argument qui piège RECHERCHEV n'existe plus.
- si_non_trouvé remplace le
#N/Apar un message clair. Sans cet argument, la fonction renvoie#N/A. - mode_recherche = -1 lance la recherche du dernier élément vers le premier : dans un historique d'affectations trié par date, on obtient ainsi la dernière affectation d'une personne plutôt que la première.
| mode_correspondance | Effet | mode_recherche | Effet |
|---|---|---|---|
| 0 (défaut) | Exacte, sinon #N/A | 1 (défaut) | Du premier au dernier |
| -1 | Exacte, sinon l'élément immédiatement inférieur | -1 | Du dernier au premier |
| 1 | Exacte, sinon l'élément immédiatement supérieur | 2 | Binaire, plage triée croissante |
| 2 | Caractères génériques * ? ~ | -2 | Binaire, plage triée décroissante |
INDEX/EQUIV : l'alternative qui marche sur toutes les versions
Avant RECHERCHEX, les utilisateurs avancés combinaient deux fonctions. EQUIV trouve la position d'une valeur dans une colonne ; INDEX renvoie la valeur située à une position donnée.
Lecture de droite à gauche : EQUIV cherche le matricule dans la colonne Matricule et renvoie, par exemple, 2 (deuxième ligne de données) ; INDEX renvoie alors la 2e valeur de la colonne Service.
- Le 0 en 3e argument d'EQUIV impose la correspondance exacte ; sans valeur trouvée, la formule renvoie
#N/A. Le type par défaut (1) est une recherche approximative : même piège que le VRAI de RECHERCHEV. - Comme RECHERCHEX, la combinaison cherche dans n'importe quelle direction et résiste aux insertions de colonnes.
- Pour afficher un message à la place de
#N/A:=SIERREUR(INDEX(…);"Matricule inconnu"), une fois la formule vérifiée.
Recherche par tranches : une table plutôt que des SI imbriqués
Classer une valeur dans une tranche (nombre de jours d'absence, ancienneté, nombre de postes maîtrisés) se fait avec une petite table de seuils, triée par ordre croissant, et une recherche approximative.
| K | L | |
|---|---|---|
| 1 | À partir de | Catégorie |
| 2 | 0 | Peu polyvalent |
| 3 | 3 | Polyvalent |
| 4 | 6 | Très polyvalent |
Les seuils (0, 3, 6 postes maîtrisés) sont des exemples d'organisation, à fixer par l'équipe. Pour une valeur en B2 :
- Excel 2021 / 2024 / 365 :
=RECHERCHEX(B2;$K$2:$K$4;$L$2:$L$4;"";-1)— le mode -1 renvoie la correspondance exacte, sinon l'élément immédiatement inférieur. - Toutes versions :
=RECHERCHEV(B2;$K$2:$L$4;2;VRAI)— ici la correspondance approximative est voulue, et la première colonne est bien triée.
Changer une tranche ne demande que de modifier la table, sans toucher aux formules ; une chaîne de SI imbriqués, elle, devrait être réécrite dans chaque cellule.
FILTRE et UNIQUE : extraire une liste entière (versions récentes)
Les fonctions de tableau dynamique renvoient plusieurs valeurs qui se « propagent » dans les cellules voisines. Elles sont disponibles dans Excel 2021, Excel 2024 et Microsoft 365, mais pas dans Excel 2016 ni 2019.
La formule recopie toutes les lignes de tAbsences qui concernent le service choisi en H1 et le type Formation. Dans l'argument inclure, la documentation de l'éditeur indique de multiplier les conditions pour un ET et de les additionner pour un OU. Sans l'argument si_vide, une sélection sans résultat renvoie l'erreur #CALC!.
UNIQUE renvoie la liste sans doublon des postes réellement utilisés dans les affectations ; combinée à TRIER, elle les classe par ordre alphabétique. C'est une façon simple de construire l'en-tête d'un tableau de synthèse qui suit l'évolution de l'atelier.
Sur Excel 2016 ou 2019, le même besoin se traite sans formule : filtre automatique de la ligne d'en-tête pour consulter, commande « Supprimer les doublons » sur une copie de la colonne pour obtenir une liste unique, ou tableau croisé dynamique (chapitre 2.1).
Quelle fonction de recherche choisir ?
Oui
- Une valeur : RECHERCHEX (exacte par défaut, si_non_trouvé)
- Une liste de lignes : FILTRE (avec si_vide)
- Une liste sans doublon : UNIQUE
Non, ou je ne sais pas
- Une valeur : INDEX/EQUIV avec type 0
- Ou RECHERCHEV avec FAUX, clé en première colonne
- Une liste : filtre automatique ou tableau croisé dynamique
Sources
- Documentation de l'éditeur : fonctions RECHERCHEV, RECHERCHEX, EQUIV, INDEX, SIERREUR, FILTRE, UNIQUE ; « Rechercher des valeurs au moyen de la fonction RECHERCHEV, INDEX ou EQUIV » — support.microsoft.com
- Formation indépendante, non affiliée à Microsoft. Excel et Microsoft 365 sont des marques déposées de leur éditeur. Disponibilité des fonctions relevée le 21/10/2026.
À retenir
- Une recherche fiable commence par une clé unique au même format des deux côtés (matricule, code poste).
- RECHERCHEV : toujours
FAUXen 4e argument pour une clé ; elle ne regarde que vers la droite. - RECHERCHEX : exacte par défaut, toutes directions, message si non trouvé ; absente d'Excel 2016 et 2019.
- INDEX/EQUIV avec type 0 : l'équivalent pour toutes les versions.
- Tranches : une table de seuils triée et une recherche approximative, plutôt que des SI imbriqués.
- FILTRE et UNIQUE (2021+) extraient des listes ; sans si_vide, FILTRE renvoie
#CALC!.