Dans Excel, tester si une cellule contient un texte précis semble simple, jusqu’au moment où la formule renvoie une erreur au lieu d’un résultat. C’est le problème classique de la fonction SI combinée à CHERCHE : seule, CHERCHE retourne une erreur quand elle ne trouve pas le mot cherché, et SI ne sait pas quoi faire de cette erreur. Ce guide explique comment construire une formule qui fonctionne vraiment, sans message d’erreur.
Pourquoi la formule SI cellule contient texte échoue seule
Prenons un exemple concret. Vous avez une colonne de noms de produits et vous voulez afficher « Trouvé » si la cellule contient le mot « rouge ». Vous tentez d’écrire une formule avec SI et CHERCHE directement.
A lire aussi : Transférer vos fichiers de Google Drive vers OneDrive facilement et sans téléchargement
CHERCHE renvoie la position du mot dans la cellule, par exemple 5 si « rouge » commence au cinquième caractère. Mais si « rouge » est absent, elle ne renvoie pas « rien » : elle renvoie une erreur #VALEUR!. Et SI ne peut pas comparer une erreur à quoi que ce soit.
C’est là que beaucoup de formules explosent silencieusement.
Lire également : Les étapes clés pour réussir l'annulation de titres
La formule ESTNUM + CHERCHE pour tester le contenu d’une cellule
La solution repose sur une fonction intermédiaire : ESTNUM. Elle répond à une seule question : est-ce que ce résultat est un nombre ? Si CHERCHE trouve le mot, elle renvoie un nombre (la position). ESTNUM renvoie alors VRAI. Si CHERCHE ne trouve rien, elle renvoie une erreur, et ESTNUM renvoie FAUX. Plus d’erreur visible.
Voici la structure complète :
=SI( ESTNUM( CHERCHE( « rouge » ; A2 ) ) ; « Trouvé » ; « » )
En clair : si A2 contient « rouge », affiche « Trouvé ». Sinon, affiche rien (deux guillemets vides). La cellule reste propre, sans erreur.
CHERCHE ne distingue pas les majuscules des minuscules. Elle trouvera « Rouge », « ROUGE » ou « rouge » indifféremment. C’est souvent ce que l’on veut pour des données issues d’exports ou de formulaires.

Quand utiliser TROUVE plutôt que CHERCHE dans Excel
Vous avez des codes produits ou des identifiants où la casse compte ? « AB-12 » et « ab-12 » ne doivent pas être traités de la même façon ?
Dans ce cas, remplacez CHERCHE par TROUVE. La logique est identique, mais TROUVE est sensible à la casse. La formule devient :
=SI( ESTNUM( TROUVE( « AB-12 » ; A2 ) ) ; « Code valide » ; « » )
Pour des noms communs ou du texte ordinaire, CHERCHE reste le meilleur choix. Pour des codes, références ou identifiants techniques, TROUVE est plus fiable.
Compter les cellules qui contiennent un texte avec NB.SI
La formule SI avec ESTNUM et CHERCHE répond à une question dans une cellule unique. Mais si vous voulez savoir combien de cellules d’une colonne contiennent un mot précis, une autre approche est plus directe : NB.SI avec un caractère générique.
Voici comment écrire cette formule :
=NB.SI( A2:A100 ; « *rouge* » )
Les astérisques encadrant « rouge » signifient « n’importe quels caractères avant et après ». NB.SI compte alors toutes les cellules de la plage qui contiennent « rouge » n’importe où dans leur contenu. Pas d’ESTNUM, pas de CHERCHE : c’est la formule la plus rapide pour un comptage sur une colonne entière.
Vous pouvez l’intégrer dans une condition SI si besoin :
=SI( NB.SI( A2:A100 ; « *rouge* » ) > 0 ; « Au moins un rouge trouvé » ; « Aucun » )
Pièges concrets à éviter dans vos formules Excel
Quelques erreurs reviennent régulièrement quand on construit ces formules.
- Les espaces invisibles. Une cellule qui semble vide peut contenir un ou plusieurs espaces, notamment après un copier-coller ou un export de base de données. Dans ce cas, un test de cellule vide donnera FAUX alors que vous attendez VRAI. La fonction SUPPRESPACE permet de nettoyer les données avant de les tester.
- Tester du texte dans une cellule qui contient un nombre. CHERCHE cherche une chaîne de caractères. Si la cellule contient un nombre (pas du texte), CHERCHE peut se comporter de façon inattendue. Pour vérifier qu’une cellule contient bien une valeur textuelle, la fonction ESTTEXTE répond à cette question avant d’aller plus loin.
- Oublier les guillemets autour du mot cherché. CHERCHE( rouge ; A2 ) sans guillemets interprète « rouge » comme un nom de cellule ou de plage, ce qui produit immédiatement une erreur. Le texte cherché doit toujours être entre guillemets : CHERCHE( « rouge » ; A2 ).
Adapter la formule à plusieurs mots cherchés dans une cellule Excel
Vous voulez tester si une cellule contient l’un de plusieurs mots possibles ? Il suffit d’imbriquer plusieurs ESTNUM + CHERCHE avec la fonction OU.
=SI( OU( ESTNUM( CHERCHE( « rouge » ; A2 ) ) ; ESTNUM( CHERCHE( « vermeil » ; A2 ) ) ) ; « Couleur rouge détectée » ; « » )
Cette formule renvoie « Couleur rouge détectée » dès que l’un des deux mots est présent dans A2. La fonction OU retourne VRAI si au moins une condition est vraie, ce qui permet de tester plusieurs variantes d’un même concept sans dupliquer la colonne.
Pour exiger que les deux mots soient présents en même temps, remplacez OU par ET.
Résumé des formules selon votre besoin
| Besoin | Formule adaptée |
|---|---|
| Tester si une cellule contient un texte (sans casse) | =SI( ESTNUM( CHERCHE( « mot » ; A2 ) ) ; « oui » ; « » ) |
| Tester avec sensibilité à la casse | =SI( ESTNUM( TROUVE( « Mot » ; A2 ) ) ; « oui » ; « » ) |
| Compter les cellules contenant un texte | =NB.SI( A2:A100 ; « *mot* » ) |
| Tester plusieurs mots possibles | =SI( OU( ESTNUM( CHERCHE( « mot1 » ; A2 ) ) ; ESTNUM( CHERCHE( « mot2 » ; A2 ) ) ) ; « oui » ; « » ) |
La formule de base avec ESTNUM et CHERCHE couvre la grande majorité des situations. Dès que vous gérez des codes ou des identifiants, passez à TROUVE pour ne pas manquer une différence de casse. Et si votre objectif est un comptage sur une colonne, NB.SI avec l’astérisque est plus simple à lire et à maintenir.

