Sommaire
Parmi les nombreuses fonctions d'Excel, certaines des plus importantes et des plus emblématiques sont les fonctions de recherche. Dans cette catégorie de fonctions, l'objectif est simple : retrouver les valeurs associées aux valeurs initiales pour éviter la double saisie
Par exemple :
- Retrouver le prénom et le nom d'une personne en fonction de son matricule
- Retrouver la catégorie et/ou la région d'un client en fonction de son nom ou de son ID
- Retrouver le département et la région associées à un code postal
- Et ainsi de suite
La plus célèbre de toutes ces fonctions est la fonction RECHERCHEV, remplacée avantageusement en 2019 par la fonction RECHERCHEX. Mais en réalité, maîtriser uniquement RECHERCHEV, RECHERCHEX - ou même INDEX+EQUIV - c'est se priver d'un ensemble redoutable de fonctions qui, combinées, peuvent permettre de modifier radicalement votre utilisation d'Excel.
.png)
Dans cet article, nous avons sélectionné les 10 fonctions de recherche les plus importantes d'Excel, en mettant notamment l'accent sur les fonctions disponibles dans les versions récentes d'Excel (2019, 2021 et Microsoft 365). Pour rendre tout cela plus facile à comprendre, nous avons aussi regrouper les fonctions de recherche en 4 ensembles homogènes.
Les 4 ensembles de fonctions de recherche d'Excel :
- Les fonctions de recherche standard (x3)
- Les fonctions de recherche spéciales (x3)
- Les fonctions de recherche multi-résultats (x2)
- Les fonctions de recherche intra-textuelles (x2)
Est-ce pertinent de faire un top 10 sur les fonctions de recherche ?
Un top 3 même une seule fonction n'aurait pas suffit ?
Oui et non... Pour l'essentiel des recherches, à condition d'avoir accès à une version moderne d'Excel, la fonction RECHERCHEX est effectivement suffisante. Mais il existe au moins 2 raisons pour lesquelles nous pensons que les fonctions de ce top 10 sont toutes pertinentes :
Exception 1 - Les recherches spéciales : Rechercher une valeur dans un tableau croisé dynamique, rechercher la position d'un élément dans un texte... Pour ces cas-là, la fonction RECHERCHEX n'est pas l'outil approprié.
Exception 2 - Les cas spécifiques : Il existe aussi de nombreux cas non-standard dans lesquels une fonction spécifique peut éviter un bricolage complexe. Notamment dans l'utilisation des nouvelles fonctions comme FRACTIONNER.TEXTE, TEXTE.AVANT...
Pour ces raisons, évoquées ici de manière très sommaires, nous considérons que les 10 fonctions évoquées ici méritent toutes un peu de considération, au cas où.
Les recherches standard (x3)
Ce sont les fonctions les plus connues parmi les fonctions de recherche. Elles ont quasiment toutes le même objectif et le même fonctionnement : retrouver une valeur dans une table et retourner les valeurs correspondantes
Fonctions vues dans cet article : RECHERCHEX, INDEX & EQUIV
Autres fonctions existantes : RECHERCHEV, RECHERCHEH, RECHERCHE...
La fonction RECHERCHEX
La plus utile aujourd'hui de toutes les fonctions de recherche est RECHERCHEX. Cette fonction, ajoutée par Microsoft à Excel en 2021 est la fonction de recherche la plus efficace actuellement, pour beaucoup de recherches standard. C'est la version moderne des fonctions RECHERCHEV, RECHERCHEH et RECHERCHE, qui sont donc devenues 99% obsolètes en 2021 pour beaucoup d'utilisateurs.
Le but de la fonction RECHERCHEX est de récupérer une valeur finale en fonction d'une valeur initiale. Par exemple de récupérer la date de naissance de quelqu'un en fonction de son nom ou de son matricule. Ou de récupérer un nom de département ou de région en fonction d'un code postal. C'est ce cas d'usage essentiel de n'importe quel outil Excel qui permet d'éviter les double-saisies, les erreurs et les pertes de temps. (A condition, bien entendu, de bien maîtriser ce genre de fonctions.)
Par rapport à RECHERCHEV (le standard historique jusqu'à 2021), la fonction RECHERCHEX a de nombreux avantages dont :
- La possibilité de faire une recherche de droite à gauche (alors qu'avec RECHERCHEV c'est toujours de gauche à droite)
- La robustesse par rapport à la position des colonnes (ajout, suppression, déplacement)
- L'intégration de la gestion des erreurs directement dans la fonction (si la valeur n'a pas été trouvée)
- Le choix de l'orientation (du début vers la fin (haut-bas) ou de la fin vers le début (bas-haut)
- Les correspondances REGEX
Syntaxe de la fonction RECHERCHEX :
RECHERCHEX( valeur_cherchée ; tableau_recherche ; tableau_renvoyé ; [si_non_trouvé] ; [mode_correspondance] ; [mode_recherche] )
Exemples de la fonction RECHERCHEX (correspondances exactes) :

=RECHERCHEX( I4 ; Tab_1[Salarié] ; Tab_1[Âge] ) = 32
C'est le cas standard d'utilisation des fonctions de recherche : retrouver une valeur en fonction d'une valeur connue (ici un âge en fonction d'un nom)
=RECHERCHEX( I4 ; Tab_1[Salarié] ; Tab_1[Matricule] ) = "M00128"
Dans ce cas-là, la fonction RECHERCHEV n'aurait pas fonctionné car la recherche s'effectue de la droite vers la gauche.

=RECHERCHEX( [@Etablissement] ; Tab_Etab[Code] ; Tab_Etab[Ville] )
Nouveau cas standard de la fonction RECHERCHEX, mais cette fois pour retrouver toutes les villes correspondant à tous les codes établissements.
Exemples de la fonction RECHERCHEX (correspondances inexactes) :

=RECHERCHEX( [@Quantité] ; Tab_Réduc[Quantité] ; Tab_Réduc[Réduc] ; 0 ; -1 )
Dans cet exemple, la recherche ne se fait pas sur une correspondance exacte mais sur une correspondance numérique par la valeur inférieure la moins élevée (argument -1).
Le 4ème argument permet de préciser la valeur à utiliser en cas de non correspondance, ici 0.
Exemples de la fonction RECHERCHEX (double correspondances) :

=RECHERCHEX( 1 ; (Tab_1b[Genre]=I5) * (Tab_1b[Service]=I6) ; Tab_1b[Salarié] ; "NC" )
Dans cet exemple, nous recherchons le premier salarié à correspondre à 2 critères (Genre = "Femme" et Service ="Production"), ce qui permet d'obtenir "MARTIN Jeanne".
Si d'autres conditions devaient être ajoutées, elles pourraient l'être de la même manière que la deuxième, en utilisant le symbole * et les parenthèses.

=RECHERCHEX( [@Quantité] ; Tab_Réducb[Quantité] ;Tab_Réducb ; 0 ; -1 ) RECHERCHEX( [@Année] ; Tab_Réducb[#En-têtes] ; Tab_Réducb )
Dans cet exemple, la recherche doit s'effectuer simultanément dans 2 dimensions, pour correspondre à la fois à la quantité et à l'année.
Nous utilisons donc 2 fonctions RECHERCHEX, séparées l'une de l'autre par un espace, correspondant ici à opérateur d'intersection.
Ces 5 exemples, loin d'être suffisant pour mettre en lumière l'incroyable potentiel de la fonction RECHERCHEX permettent cependant de percevoir le début de ce potentiel.
Aujourd'hui, la fonction RECHERCHEX est donc la fonction prioritaire à utiliser dans Excel pour les recherches. Elle est à utiliser dans l'immense majorité des cas, soit avec sa syntaxe normale, soit avec les syntaxes indiquées dans les 4ème et 5ème exemples.
Cependant lorsqu'il existe une problématique de compatibilité avec d'autres versions d'Excel antérieures à 2021 (Excel 2019, Excel 2016, Excel 2013, voire avant), il est parfois utile de pouvoir utiliser la fonction RECHERCHEV, qui malgré ses inconvénients est entièrement rétro-compatible.
Dans cet article, nous ne nous attarderons pas sur la fonction RECHERCHEV, ni sur les fonctions RECHERCHEH et RECHERCHE, principalement car nous préférons l'efficacité à la mélancholie et qu'il n'existe pas de raison valable pour utiliser encore aujourd'hui des versions d'Excel datant d'avant 2021.
RECHERCHEX, le nec plus ultra de la recherche sur Excel ?
Parmi toutes les fonctions d'Excel liées aux recherches, <spoiler> la fonction RECHECHEX est sans doute aujourd'hui celle a prioriser dans 99% des cas <spoiler>. C'est une version améliorée de RECHERCHE, de RECHERCHEV et de RECHERCHEX, qui bien utilisée permet aussi d'effectuer des recherches en 2 dimensions, comme INDEX/EQUIV/EQUIV.
Mais en 2025, l'approche d'Excel par formules et fonctions est loin d'être de manière générale l'approche plus optimale. La sur-utilisation des formules rend les classeurs Excel plus longs à créer, plus difficile à maintenir et à modifier, et plus lent à calculer quand les volumes de données augmentent.
Dans de nombreux cas, il est préférable d'opter pour 2 alternatives bien plus rentables à tous les points de vue :
- Les fusions de requêtes dans Power Query
- Les relations de tables dans Power Pivot
A l'époque à laquelle RECHERCHEX n'existait pas encore, les nombreuses contraintes liées à RECHERCHEV ont souvent fait préférer aux utilisateurs les plus expérimentés un ensemble de fonctions plus complexe à gérer mais beaucoup plus polyvalent : le combo INDEX et EQUIV
Dans cet article, nous découvrirons d'abord séparément les fonctions INDEX et EQUIV avant de présenter le combo INDEX+EQUIV (et INDEX+EQUIV+EQUIV).
La fonction INDEX
La fonction INDEX permet de récupérer un élément en fonction de sa position dans une plage.
Contrairement donc à la fonction RECHERCHEX, qui permet de retrouver une valeur finale en fonction d'une valeur initiale, la logique de recherche d'INDEX est une logique géographique, avec un point zéro et des coordonnées (latitude et longitude).
Syntaxe de la fonction INDEX :
=INDEX( matrice ; numéro_ligne ; [numéro_colonne] )
Exemples de la fonction INDEX :

=INDEX( Tab_1 ; 3 ) = "M00128"
Dans le tableau "Tab_1", la valeur située à la 3ème ligne est "M00128".
=INDEX( Tab_1 ; 3 ; 2 ) = "DUBOIS Alice"
"DUBOIS Alice" est la valeur située à l'intersection de la 3ème ligne et de la 2ème colonne.
Le problème de la fonction INDEX utilisée seule est souvent que les coordonnées (numéro de la ligne, numéro de la colonne) sont régulièrement les principaux éléments inconnus à obtenir. Ce qui rend cette fonction non pas inutile, mais relativement inefficace seule (sauf exceptions).
Mais il existe une autre fonction, EQUIV - et sa version moderne EQUIVX - qui permet de récupérer la position d'un élément dans une liste. EQUIV a donc l'objectif inverse de celui d'INDEX : elle détermine une position en fonction d'une valeur, et non pas une valeur relative à une position.
La fonction EQUIV
Syntaxe de la fonction EQUIV :
EQUIV( valeur_cherchée ; tableau_recherche ; [type] )
Exemples de la fonction EQUIV :
=EQUIV( "DUBOIS Alice" ; Tab_1[Salarié] ; 0 ) = 3
Dans la colonne "Salarié" (du tableau "Tab_1"), la valeur "DUBOIS Alice" est à la 3ème position.
De la même manière que la fonction RECHERCHEX est la version moderne de la fonction RECHERCHEV, la fonction EQUIVX est la version moderne de la fonction EQUIV. Dans cet article, nous nous focaliserons uniquement sur la fonction EQUIV, car le principal cas d'usage de la fonction EQUIV en 2025 est l'absence d'accès à une version plus moderne d'Excel intégrant la fonction RECHERCHEX.
Le combo INDEX+EQUIV
EQUIV est donc la fonction "inverse" de la fonction INDEX. Et c'est justement cette réciprocité entre ces 2 fonctions qui rend le combo INDEX+EQUIV si efficace. Combinées ensemble, les fonction INDEX et EQUIV permettent de récupérer une valeur en fonction d'une ou deux valeurs initiales, tout en s'affranchissant de plusieurs limites de la fonction RECHERCHEV.
Dans les versions d'Excel antérieures à 2021, le combo INDEX+EQUIV offrait une excellente alternative à la fonction RECHERCHEV notamment en :
- Permettant une recherche de droite à gauche (et non obligatoirement de gauche à droite)
- Restant robuste lors de la modification de la position des colonnes (ajout, suppression ou déplacement de colonnes)
- Offrant la possibilité d'effectuer la recherche simultanément en 2 dimensions (verticale et horizontale) et non pas juste verticalement
Exemple du combo INDEX+EQUIV (recherche à une dimension) :

=INDEX( Tab_1[Matricule] ; EQUIV( "Alice DUBOIS" ; Tab_ [Salarié] ; 0 ) ) = 32
Exemple du combo INDEX+EQUIV+EQUIV (recherche à 2 dimensions) :

=INDEX( Tab_1 ; EQUIV( "Alice DUBOIS" ; Tab_ [Salarié] ; 0 ) ; EQUIV( H5 ; Tab_1[#En-têtes] ; 0 ) ) = 32
RECHERCHEX, INDEX et EQUIV sont donc les fonctions qui permettent dans Excel de faire des recherches standard. En 2025, il est cependant préférable de toujours utiliser RECHERCHEX pour moderniser et standardiser un peu les pratiques dans la jungle Excel. Mais, au-delà de RECHERCHEX ou de ces 3 premières fonctions de recherche, il existe d'autres types de recherches qui nécessitent donc d'autres fonctions.
Les recherches spéciales (x3)
Les 3 fonctions analysées plus haut permettent d'effectuer des recherches Excel dans les cas principaux de la logique "je cherche une valeur en fonction d'une valeur que je connais déjà".
Mais il existe aussi d'autres fonctions de recherche, dans Excel, qui ne correspondent pas à cette logique et qui enrichissent les possibilités offertes par Excel. Dans cet article nous verrons 3 d'entre elles : INDIRECT, DECALER et LIREDONNEESTABCROISDYNAMIQUE
Fonctions vues dans cet article : INDIRECT, DECALER & LIREDONNESTABCROISDYNAMIQUE
Autres fonctions existantes : PRENDRE, EXCLURE, SUPPR.PLAGE...
La fonction INDIRECT
La fonction INDIRECT permet de récupérer la valeur ou les valeurs associées à une référence (une localisation dans un classeur), quel que soit le type et la précision de cette référence.
La notion de référence étant complexe à saisir au début, voici quelques exemples de références dans Excel :
- Une cellule : A1
- Une plage de cellules : A1:A100
- Tous les résultats propagés depuis une formule dans une cellule : B5#
- Une plage de cellules avec précision de la feuille : FACTURES!A1:E1000
- Un nom du Gestionnaire de noms : La_Date_MàJ
- Un tableau : Tab_Factures
- Une colonne d'un tableau : Tab_Factures[Client]
- Les en-têtes de colonne d'un tableau : Tab_Factures[[ID]:[Client]]
Il est donc possible, dans Excel, de variabiliser une référence puis de récupérer la ou les valeurs correspondant à cette référence en utilisant la fonction INDIRECT.
Syntaxe de la fonction INDIRECT :
INDIRECT( réf_texte ; [a1] )
Exemple de la fonction INDIRECT :
=INDIRECT( "JANVIER" & "!E10:E1000" ) >>> récupère les valeurs de la plage E10:E1000 de la feuille JANVIER
Cette formule permet donc de variabiliser par exemple le nom de la feuille (la valeur "JANVIER") pour récupérer avec une seule formule les valeurs correspondant aux autres mois et donc aux autres feuilles
=INDIRECT( "Tab_Factures[" & "Montant" & "]" ) >>> récupère les valeurs de la colonne Montant du tableau Tab_Factures
Idem avec la variabilisation du nom de la colonne (ici la valeur "Montant"), pour récupérer facilement avec la même formule les valeurs d'autres colonnes
La fonction INDIRECT est très utile dans 2 cas principaux : les classeurs dans lesquels la donnée est mal structurée (une feuille pour janvier, une autre pour février, ou idem pour les colonnes...) et la création de formules et graphiques conditionnels correspondant à des logiques complexes
La fonction DECALER
La fonction DECALER permet de déplacer une cellule ou une plage initiale d'un certain nombre de lignes et/ou de colonnes. Comme pour de nombreuses fonctions présentées dans cet article, la fonction DECALER a longtemps été un symbole de l'usage avancé d'Excel, même si aujourd'hui la plupart de ces utilisations peuvent avantageusement être remplacés par l'utilisation de Power Query ou de Power Pivot pour un usage plus moderne d'Excel.
Syntaxe de la fonction DECALER :
DECALER( réf ; lignes ; colonnes ; [hauteur] ; [largeur] )
Exemples de la fonction DECALER :

=DECALER( Tab_1[[#En-têtes];[Matricule]] ; 3 ; 0 ) = "M00128"
=DECALER( Tab_1[[#En-têtes];[Matricule]] ; 3 ; 1 ) = "DUBOIS Alice"
La fonction LIREDONNEESTABCROISDYNAMIQUE
Voilà l'une des fonctions de recherche les plus intéressantes d'Excel, totalement sous-estimée alors qu'elle correspond exactement à un usage moderne du tableur historique de Microsoft.
La fonction LIREDONNEESTABCROISDYNAMIQUE permet de récupérer la valeur correspondant à la position d'un élément dans un tableau croisé dynamique (TCD). Par exemple, la valeur correspondant à la région IDF dans un TCD, et ce même si la cellule correspondant à cette région n'est pas fixe lors de l'actualisation des données ou de l'utilisation de segments connectés au TCD.
Cette fonction peut donc s'avérer importante, voire essentielle, dès lors qu'un classeur Excel contient un ou plusieurs TCD, pour récupérer des données provenant d'eux et modifiées par les segments.
Syntaxe de la fonction LIREDONNEESTABCROISDYNAMIQUE :
LIREDONNEESTABCROISDYNAMIQUE( champ ; réf_TCD ; [champ 1 ; élément 1] ... )
Exemples de la fonction LIREDONNEESTABCROISDYNAMIQUE :

=LIREDONNEESTABCROISDYNAMIQUE( "Matricule" ; $B$6 ) = 34
Dans cet exemple, la fonction LIREDONNEESTABCROISDYNAMIQUE récupère la valeur totale du champ "Matricule" du TCD commençant dans la cellule B5. Et ce même si lors de différentes modifications, le total de ce champ n'est plus dans la cellule C11.

=LIREDONNEESTABCROISDYNAMIQUE( "Matricule" ; $B$6 ; "Service" ; "Commercial" ) = 4
Dans ce second exemple, la valeur recherchée est celle correspondant au champ "Matricule" pour la ligne correspondant au service "Commercial".
Ces 3 nouvelles fonctions ont donc toutes leur utilité par rapport aux fonctions de recherche standard : rechercher par référence, rechercher par décalage depuis une référence initiale et rechercher dans un TCD
Seules, ensemble ou combinées à d'autres fonctions, elles permettent d'ouvrir en grand le champ des possibles dans Excel et de parvenir, avec plus ou moins de simplicité, à des objectifs complexes.
Mais pour l'essentiel, toutes les fonctions précédemment citées ne permettent de récupérer qu'une valeur, celle de la première correspondance avec la valeur initiale indiquée. Alors que parfois, ce qui est utile c'est de récupérer toutes les valeurs correspondantes à une recherche. Et il existe plusieurs fonctions pour ça.
Catégorie
Catégorie
Catégorie
Fonction
Fonction
Fonction
Syntaxe
Syntaxe
Syntaxe
Exemple
Exemple
Exemple
1/ Recherches standard
1/ Recherches standard
1/ Recherches standard
RECHERCHEX
RECHERCHEX
RECHERCHEX
RECHERCHEX( valeur_cherchée ; tableau_recherche ; tableau_renvoyé ; [si_non_trouvé] ; [mode_correspondance] ; [mode_recherche] )
RECHERCHEX( valeur_cherchée ; tableau_recherche ; tableau_renvoyé ; [si_non_trouvé] ; [mode_correspondance] ; [mode_recherche] )
RECHERCHEX( valeur_cherchée ; tableau_recherche ; tableau_renvoyé ; [si_non_trouvé] ; [mode_correspondance] ; [mode_recherche] )
=RECHERCHEX( I4 ; Tab_1[Salarié] ; Tab_1[Âge] ) = 32
=RECHERCHEX( I4 ; Tab_1[Salarié] ; Tab_1[Âge] ) = 32
=RECHERCHEX( I4 ; Tab_1[Salarié] ; Tab_1[Âge] ) = 32
1/ Recherches standard
1/ Recherches standard
1/ Recherches standard
INDEX
INDEX
INDEX
=INDEX( matrice ; numéro_ligne ; [numéro_colonne] )
=INDEX( matrice ; numéro_ligne ; [numéro_colonne] )
=INDEX( matrice ; numéro_ligne ; [numéro_colonne] )
=INDEX( Tab_1 ; 3 ; 2 ) = "DUBOIS Alice"
=INDEX( Tab_1 ; 3 ; 2 ) = "DUBOIS Alice"
=INDEX( Tab_1 ; 3 ; 2 ) = "DUBOIS Alice"
1/ Recherches standard
1/ Recherches standard
1/ Recherches standard
EQUIV
EQUIV
EQUIV
EQUIV( valeur_cherchée ; tableau_recherche ; [type] )
EQUIV( valeur_cherchée ; tableau_recherche ; [type] )
EQUIV( valeur_cherchée ; tableau_recherche ; [type] )
=EQUIV( "DUBOIS Alice" ; Tab_1[Salarié] ; 0 ) = 3
=EQUIV( "DUBOIS Alice" ; Tab_1[Salarié] ; 0 ) = 3
=EQUIV( "DUBOIS Alice" ; Tab_1[Salarié] ; 0 ) = 3
1/ Recherches standard
1/ Recherches standard
1/ Recherches standard
INDEX+EQUIV+EQUIV
INDEX+EQUIV+EQUIV
INDEX+EQUIV+EQUIV
INDEX( matrice ; EQUIV( valeur_cherchée ; tableau_recherche ; [type] ) ; EQUIV( valeur_cherchée ; tableau_recherche ; [type] ) )
INDEX( matrice ; EQUIV( valeur_cherchée ; tableau_recherche ; [type] ) ; EQUIV( valeur_cherchée ; tableau_recherche ; [type] ) )
INDEX( matrice ; EQUIV( valeur_cherchée ; tableau_recherche ; [type] ) ; EQUIV( valeur_cherchée ; tableau_recherche ; [type] ) )
=INDEX( Tab_1 ; EQUIV( "Alice DUBOIS" ; Tab_ [Salarié] ; 0 ) ; EQUIV( H5 ; Tab_1[#En-têtes] ; 0 ) ) = 32
=INDEX( Tab_1 ; EQUIV( "Alice DUBOIS" ; Tab_ [Salarié] ; 0 ) ; EQUIV( H5 ; Tab_1[#En-têtes] ; 0 ) ) = 32
=INDEX( Tab_1 ; EQUIV( "Alice DUBOIS" ; Tab_ [Salarié] ; 0 ) ; EQUIV( H5 ; Tab_1[#En-têtes] ; 0 ) ) = 32
2/ Recherches spéciales
2/ Recherches spéciales
2/ Recherches spéciales
INDIRECT
INDIRECT
INDIRECT
INDIRECT( réf_texte ; [a1] )
INDIRECT( réf_texte ; [a1] )
INDIRECT( réf_texte ; [a1] )
=INDIRECT( "JANVIER" & "!E10:E1000" ) >>> récupère les valeurs de la plage E10:E1000 de la feuille JANVIER
=INDIRECT( "JANVIER" & "!E10:E1000" ) >>> récupère les valeurs de la plage E10:E1000 de la feuille JANVIER
=INDIRECT( "JANVIER" & "!E10:E1000" ) >>> récupère les valeurs de la plage E10:E1000 de la feuille JANVIER
2/ Recherches spéciales
2/ Recherches spéciales
2/ Recherches spéciales
DECALER
DECALER
DECALER
DECALER( réf ; lignes ; colonnes ; [hauteur] ; [largeur] )
DECALER( réf ; lignes ; colonnes ; [hauteur] ; [largeur] )
DECALER( réf ; lignes ; colonnes ; [hauteur] ; [largeur] )
=DECALER( Tab_1[[#En-têtes];[Matricule]] ; 3 ; 0 ) = "M00128"
=DECALER( Tab_1[[#En-têtes];[Matricule]] ; 3 ; 0 ) = "M00128"
=DECALER( Tab_1[[#En-têtes];[Matricule]] ; 3 ; 0 ) = "M00128"
2/ Recherches spéciales
2/ Recherches spéciales
2/ Recherches spéciales
LIREDONNEESTABCROISDYNAMIQUE
LIREDONNEESTABCROISDYNAMIQUE
LIREDONNEESTABCROISDYNAMIQUE
LIREDONNEESTABCROISDYNAMIQUE( champ ; réf_TCD ; [champ 1 ; élément 1] ... )
LIREDONNEESTABCROISDYNAMIQUE( champ ; réf_TCD ; [champ 1 ; élément 1] ... )
LIREDONNEESTABCROISDYNAMIQUE( champ ; réf_TCD ; [champ 1 ; élément 1] ... )
=LIREDONNEESTABCROISDYNAMIQUE( "Matricule" ; $B$6 ; "Service" ; "Commercial" ) = 4
=LIREDONNEESTABCROISDYNAMIQUE( "Matricule" ; $B$6 ; "Service" ; "Commercial" ) = 4
=LIREDONNEESTABCROISDYNAMIQUE( "Matricule" ; $B$6 ; "Service" ; "Commercial" ) = 4
3/ Recherches multi-résultats
3/ Recherches multi-résultats
3/ Recherches multi-résultats
UNIQUE
UNIQUE
UNIQUE
UNIQUE( tableau ; [by_col] ; [exactly_once] )
UNIQUE( tableau ; [by_col] ; [exactly_once] )
UNIQUE( tableau ; [by_col] ; [exactly_once] )
=UNIQUE( { "Alice" ; "Alice" ; "Alice" ; "Thomas" ; "Thomas" } ) = { "Alice" ; "Thomas" }
=UNIQUE( { "Alice" ; "Alice" ; "Alice" ; "Thomas" ; "Thomas" } ) = { "Alice" ; "Thomas" }
=UNIQUE( { "Alice" ; "Alice" ; "Alice" ; "Thomas" ; "Thomas" } ) = { "Alice" ; "Thomas" }
3/ Recherches multi-résultats
3/ Recherches multi-résultats
3/ Recherches multi-résultats
FILTRE
FILTRE
FILTRE
FILTRE( tableau ; inclure ; [si_vide] )
FILTRE( tableau ; inclure ; [si_vide] )
FILTRE( tableau ; inclure ; [si_vide] )
=FILTRE( Tab_1[Salarié] ; ( Tab_1[Genre] =I5 ) * ( Tab_1[Service] = I6 ) ; "NC" ) = { "DUBOIS Alice" ; "THOMAS Sophie" ; "MOREAU Manon" }
=FILTRE( Tab_1[Salarié] ; ( Tab_1[Genre] =I5 ) * ( Tab_1[Service] = I6 ) ; "NC" ) = { "DUBOIS Alice" ; "THOMAS Sophie" ; "MOREAU Manon" }
=FILTRE( Tab_1[Salarié] ; ( Tab_1[Genre] =I5 ) * ( Tab_1[Service] = I6 ) ; "NC" ) = { "DUBOIS Alice" ; "THOMAS Sophie" ; "MOREAU Manon" }
4/ Recherches intra-textuelles
4/ Recherches intra-textuelles
4/ Recherches intra-textuelles
CHERCHE
CHERCHE
CHERCHE
CHERCHE( texte_cherché ; texte ; [no_départ] )
CHERCHE( texte_cherché ; texte ; [no_départ] )
CHERCHE( texte_cherché ; texte ; [no_départ] )
=CHERCHE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
=CHERCHE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
=CHERCHE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
4/ Recherches intra-textuelles
4/ Recherches intra-textuelles
4/ Recherches intra-textuelles
TROUVE
TROUVE
TROUVE
CHERCHE( texte_cherché ; texte ; [no_départ] )
CHERCHE( texte_cherché ; texte ; [no_départ] )
CHERCHE( texte_cherché ; texte ; [no_départ] )
=TROUVE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
=TROUVE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
=TROUVE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
5/ Bonus
5/ Bonus
5/ Bonus
REGEX.TEST
REGEX.EXTRAIRE
REGEX.REMPLACER
REGEX.TEST
REGEX.EXTRAIRE
REGEX.REMPLACER
REGEX.TEST
REGEX.EXTRAIRE
REGEX.REMPLACER
REGEX.EXTRAIRE( texte ; modèle ; [mode renvoi] ; [respecter casse] )
REGEX.EXTRAIRE( texte ; modèle ; [mode renvoi] ; [respecter casse] )
REGEX.EXTRAIRE( texte ; modèle ; [mode renvoi] ; [respecter casse] )
=REGEX.EXTRAIRE( "78 rue des Lilas, 75001 Paris" ; "\d{5}" ) = "75001"
(le motif REGEX "\d{5}" spécifie que seuls les suites de 5 chiffres consécutifs sont à extraire)
=REGEX.EXTRAIRE( "78 rue des Lilas, 75001 Paris" ; "\d{5}" ) = "75001"
(le motif REGEX "\d{5}" spécifie que seuls les suites de 5 chiffres consécutifs sont à extraire)
=REGEX.EXTRAIRE( "78 rue des Lilas, 75001 Paris" ; "\d{5}" ) = "75001"
(le motif REGEX "\d{5}" spécifie que seuls les suites de 5 chiffres consécutifs sont à extraire)
Les recherches multi-résultats (x2)
La principale limite des fonctions citées précédemment, c'est leur incapacité à retourner simultanément plusieurs résultats correspondant à une même valeur initiale. (Pour les utilisateurs les plus avancés d'Excel, vous avez déjà peut-être une objection sur ce point, mais il me semble utile de l'éluder pour éviter de transformer un article synthétique en un livre complet exhaustif.)
Dans ce nouvel ensemble, nous allons voir 2 nouvelles fonctions dont l'utilité principale est justement de retourner tous les résultats correspondant à une recherche et non pas un résultat unique (la première correspondance).
Fonctions vues dans cet article : UNIQUE & FILTRE
Autres fonctions existantes : ...
La fonction UNIQUE
La fonction UNIQUE est l'une des fonctions les plus simples d'Excel. Elle permet de récupérer la liste des valeurs uniques d'une liste. Techniquement, elle recherche donc l'ensemble des valeurs uniques d'un ensemble de valeurs.
Syntaxe de la fonction UNIQUE :
UNIQUE( tableau ; [by_col] ; [exactly_once] )
Exemple de la fonction UNIQUE :
=UNIQUE( { "Alice" ; "Alice" ; "Alice" ; "Thomas" ; "Thomas" } ) = { "Alice" ; "Thomas" }
La fonction FILTRE
La fonction FILTRE est - je crois - la meilleure fonction d'Excel en 2025 (avec les fonctions LET et PIVOTER.PAR). C'est un élément majeur du Modern Excel, qui démultiplie les possibilités offertes par les formules. Elle permet de récupérer tous les éléments qui correspondent à un ou plusieurs critères. Par exemple toutes les femmes du service RH.
Contrairement aux fonctions comme RECHERCHEX ou INDEX+EQUIV, elle ne récupère donc pas l'élément de la première correspondance, mais bien tous les éléments qui correspondent aux critères de filtre. Elle produit donc simultanément plusieurs résultats dans plusieurs cellules.
Syntaxe de la fonction FILTRE :
FILTRE( tableau ; inclure ; [si_vide] )
Exemple de la fonction FILTRE :

=FILTRE( Tab_1[Salarié] ; ( Tab_1[Genre] =I5 ) * ( Tab_1[Service] = I6 ) ; "NC" )
Dans cet exemple, les valeurs retournées depuis la cellule H9 sont tous les salariés qui 1/ sont des femmes et 2/ appartiennent au service RH.
=FILTRE( Tab_1[Salarié] ; ( Tab_1[Genre] =I5 ) * (Tab_1[Âge] => 30) ; "NC" ) = { "DUBOIS Alice" ; "THOMAS Sophie" ; "MOREAU Manon" }
Ici, la liste des salariés retournée serait celle des femmes qui ont 30 ans ou plus.
Les fonctions UNIQUE et FILTRE ont d'innombrables utilités dans une approche plus moderne d'Excel, comme celle que nous promouvons régulièrement dans nos vidéos et dans nos formations. Pour mieux comprendre les possibilités incroyables offertes par cet ensemble de fonctions, nous vous conseillons de regarder ce tutoriel complet sur comment créer un tableau de suivi RH : https://youtu.be/DSpEDnhG9Nw?si=vu5wXT4EPgRHyl4h
Les recherches intra-textuelles (x2)
Dans certains cas, l'objectif n'est pas de rechercher une valeur dans un plage de cellules, mais un élément textuel précis à l'intérieur d'une cellule. Ces cas de figure spécifiques de recherches intra-textuelles correspondent à 2 fonctions historiques d'Excel : CHERCHE et TROUVE
Fonctions vues dans cet article : CHERCHE & TROUVE
Autres fonctions existantes : EXACT...
Les fonctions CHERCHE et TROUVE permettent de récupérer la position d'un élément textuel dans un élément plus grand. La fonction CHERCHE ne tient pas compte dans la recherche de l'alternance des majuscules et des minuscules. La fonction TROUVE prend en compte cette alternance.
Syntaxe de la fonction CHERCHE :
CHERCHE( texte_cherché ; texte ; [no_départ] )
Exemples de la fonction CHERCHE :
=CHERCHE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) = 30
Le tiret ("-") est le 3Oème caractère de l'adresse indiquée, la valeur retournée par la formule est donc 30.
=STXT( "17 rue des Talandiers, 75010 - Paris" ; CHERCHE( "-" ; "17 rue des Talandiers, 75010 - Paris" ) + 2 ; 1000 )= "Paris"
Dans cet exemple (obsolète aujourd'hui grâce aux fonctions comme TEXTE.APRES, REGEX.EXTRAIRE et REGEX.REMPLACER), la fonction CHERCHE est combinée à la fonction STXT pour récupérer le nom de la ville, située 2 caractères après le tiret ("-").
Syntaxe de la fonction TROUVE :
TROUVE( texte_cherché ; texte ; [no_départ] )
Les fonctions propagées : les nouvelles fonctions d'Excel ?
La fonction FRACTIONNER.TEXTE a un fonctionnement bien particulier, puisqu'elle renvoie plusieurs résultats en même temps et non pas juste un seul. Parmi les fonctions de texte, c'est peut-être la seule à avoir cette possibilité, mais depuis quelques années, ce genre de fonctions s'est multiplié dans Excel, ouvrant en grand le champ des possibles.
Voici quelques exemples de fonctions qui, comme FRACTIONNER.TEXTE, ont pour objectif de produire plusieurs résultats lorsqu'elles sont utilisées :
- SEQUENCE : permet de créer une séquence de nombres en fonction des paramètres choisis
- UNIQUE : permet de récupérer la liste des valeurs uniques (sans doublon) d'une plage
- TRIER / TRIERPAR : permet de trier les lignes d'une plage
- FILTRE : permet de filtrer les lignes d'une plage en fonction d'une ou plusieurs conditions
- MAP : permet de parcourir indépendamment chaque valeur d'une plage et de lui appliquer les tests ou les transformations voulues
- BYCOL / BYROW : permet de parcourir indépendamment chaque ligne / colonne d'une plage et de lui appliquer les tests ou les transformations voulues
- CHOISIRLIGNES / CHOISIRCOLS : permet de choisir et réorganiser les lignes / colonnes d'une plage en fonction de leur numéro d'index
Ces fonctions sont d'excellentes ambassadrices d'une approche moderne de l'utilisation des fonctions et des formules dans Excel.
(Bonus : les 3 fonctions REGEX)
Depuis 2024, les fonctions REGEX ont été intégrées à Excel. Ces 3 fonctions permettent notamment de faire des recherches intra-textuelles complexes, sans se limiter aux possibilités des fonctions CHERCHE et TROUVE.
Les 3 fonctions REGEX en question sont :
- REGEX.TEST
- REGEX.EXTRAIRE
- REGEX.REMPLACER
Dans cet article, nous ne nous attarderons pas en détail sur ces 3 fonctions, mais prendront juste l'exemple d'une de ces fonctions (REGEX.EXTRAIRE) pour mettre en lumière les nouvelles possibilités d'Excel.
La fonction REGEX.EXTRAIRE :
Syntaxe de la fonction REGEX.EXTRAIRE :
REGEX.EXTRAIRE( texte ; modèle ; [mode renvoi] ; [respecter casse] )
Exemple de la fonction REGEX.EXTRAIRE :
=REGEX.EXTRAIRE( "17 rue des Talandiers, 75010 - Paris" ; '"(?<=- )(.*)" ) ="Paris"
Cette formule permet de récupérer le texte qui suit le texte "- " dans le texte initial, soit ici le nom de la ville.
Dans les fonctions REGEX, l'élément principal de la formule est la syntaxe contenue dans l'argument du motif. Apprendre à utiliser cette syntaxe REGEX n'est pas facile, mais aujourd'hui les LLM comme ChatGPT, Copilot et Gemini peuvent parfaitement permettre de trouver des solutions complexes... à condition de préciser que le résultat à obtenir est une fonction REGEX.
Voilà, c'est terminé pour ce top 10 sur les fonctions de recherche d'Excel, avec bien sûr en guest star la fonction RECHERCHEX, mais pas que. Tu as envie d'apprendre plus de fonctions, de maîtriser les fonctions comme FILTRE ou les REGEX ou de te former plus largement au Modern Excel ? Alors rdv sur cette page pour voir nos formations individuelles éligibles au CPF ou sur celle-ci pour nous contacter directement (avec le code promo "TOP10RECHERCHE").