Toutes les fonctionsText
CHERCHE (SEARCH) dans Excel
CHERCHE (SEARCH) expliquée avec trois exemples vérifiés, les caractères génériques, la casse et les erreurs de recherche.
Syntaxe
SEARCH(find_text, within_text, [start_num])Exemple : =SEARCH("coffee",A2)
Disponible dans : All versions
La fonction CHERCHE renvoie la position d’un texte à l’intérieur d’un autre, sans tenir compte des majuscules et en autorisant les caractères génériques. Sa syntaxe est =SEARCH(find_text, within_text, [start_num]).
Quand l’utiliser
- Chercher un mot-clé dans des notes libres sans se soucier qu’il soit saisi comme "Refund", "REFUND" ou "refund".
- Faire correspondre un motif tel que a?c dans une référence de pièce lorsqu’un caractère est inconnu.
- Construire un test « contient » pour la mise en forme conditionnelle : =ISNUMBER(SEARCH($F$1,A2)).
Arguments
- find_text. Le texte à trouver. Utilisez ? pour n’importe quel caractère unique et * pour toute suite de caractères ; placez ~ devant eux pour rechercher un ? ou un * littéral.
- within_text. Le texte ou la cellule dans laquelle chercher.
- start_num. La position de départ facultative, comptée à partir de 1, afin d’ignorer une correspondance précédente.
Exemples expliqués
Mot-clé sans distinction de casse
Formule : C2: =SEARCH("refund",A2)
Résultat : 1
CHERCHE ignore les majuscules ; refund en minuscules correspond donc à Refund dès le premier caractère.
Un caractère inconnu
Formule : C2: =SEARCH("a?c",A2)
Résultat : 2
Le point d’interrogation représente le b ; a?c correspond donc à partir de la position 2.
Trouver un vrai point d’interrogation
Formule : C2: =SEARCH("~?",A2)
Résultat : 7
Le tilde rend le point d’interrogation littéral ; il s’agit du septième caractère.
À vous de jouer
Modifiez une formule ou une valeur dans la feuille d’exemple et observez le résultat.
Formule en D2 : =SEARCH("coffee",A6)
Résultat en D2 : 6
Erreurs et vérifications
- #VALUE!. Le texte est absent. Placez l’appel dans SIERREUR, ou utilisez ISNUMBER(SEARCH(…)) si vous avez seulement besoin d’une réponse oui ou non.
- Mauvaise position trouvée avec * ou ?. Ces signes sont des caractères génériques dans find_text. Faites-les précéder de ~ lorsque vous désignez le signe littéral.
- La casse importe finalement. Si "ID" et "id" désignent des choses différentes dans vos données, CHERCHE les confondra. Utilisez TROUVE.
Fonctions associées
Questions fréquentes
- CHERCHE peut-elle parcourir une colonne entière ?
- Pas seule. Associez-la à SUMPRODUCT(--ISNUMBER(SEARCH("x",A2:A100))) pour compter les cellules contenant "x".
- CHERCHE prend-elle en charge les expressions régulières ?
- Non. Microsoft 365 propose REGEXTEST pour cela ; CHERCHE ne connaît que ? et *.
- Pourquoi SEARCH("*",A2) renvoie-t-elle 1 ?
- Un astérisque non échappé est un caractère générique qui correspond à tout ; il est donc trouvé dès le début. Recherchez "~*" pour localiser une véritable étoile.
Autres fonctions de la catégorie Text