Résumé
Pour vérifier si une cellule contient un texte spécifique, on peut utiliser la fonction SI associée à la fonction CHERCHE et à la fonction ESTNUM.
= SI( ESTNUM( CHERCHE( "Chaise" ; B3 ) ) ; "Chaise" ; "" )
Pour vérifier Si cellule contient un texte (sensible à la casse)
Pour vérifier Si une cellule est égale à un texte.
Formule Excel – Si cellule contient
= SI(
ESTNUM( CHERCHE( mot_cherché ; cellule ) ) ;
valeur_si_trouvé ;
valeur_si_non_trouvé )
Explications
Cette formule Excel a pour objectif de vérifier qu’une cellule contient un caractère, une suite de caractères, un mot ou une suite de mots que vous choisirez. Il s’agira par exemple de vérifier que la valeur « 8 rue Victor Hugo – Paris » contient le terme « Paris » ou « Victor Hugo ».
Quelques formules sur Excel supportent la recherche partielle (contient, commence par, se termine par) grâce à l’utilisation des caractères génériques. Cependant, ce n’est pas le cas de la fonction SI. Parmi les solutions qui s’offrent à nous, la plus simple est d’utiliser la fonction ESTNUM ainsi que la fonction CHERCHE.
ESTNUM + CHERCHE
La fonction CHERCHE permet de récupérer la position d’un caractère ou d’une chaîne de caractères dans un texte donné. La valeur renvoyée sera numérique si le texte est trouvé. Dans le cas contraire, elle renverra une erreur du type #VALEUR!
.
= CHERCHE( mot_cherché ; texte_complet )
= CHERCHE( "Chaise" ; "Chaise réf.-1233" )
--> Résultat : 1
= CHERCHE( "Chaise" ; "Bureau réf.456" )
--> Résultat : #VALEUR!
La fonction ESTNUM vérifie la valeur indiquée entre parenthèses et renvoie VRAI
si elle est numérique et FAUX
dans le cas contraire.
= ESTNUM( 1 )
--> Résultat : VRAI
= ESTNUM( #VALEUR! )
--> Résultat : FAUX
En associant les deux fonctions, il est possible de vérifier qu’un mot ou une suite de mots soient contenus dans une cellule. Si c’est le cas, la fonction CHERCHE indiquera une valeur numérique et la fonction ESTNUM renverra VRAI.
= ESTNUM( valeur_à_vérifier )
= ESTNUM( CHERCHE( "Chaise" ; "Chaise réf.-1233" ) )
--> Résultat : VRAI
= ESTNUM( CHERCHE( "Chaise" ; "Bureau réf.456" ) )
--> Résultat : FAUX
Fonction SI
La fonction SI permet d’effectuer un test logique et de renvoyer une valeur si le test se révèle VRAI et une autre valeur si le test se révèle FAUX.
= SI( A1 = 1 ; "c'est bon" ; "erreur" )
--> Résultat : si A1=1 alors la fonction SI renverra "c'est bon".
Dans le cas contraire, on aura la valeur "erreur".
De fait, en imbriquant la solution ESTNUM + CHERCHE en tant que test logique, on est capable de renvoyer une valeur si la cellule contient un mot ou un texte particulier. Dans le cas contraire, on peut renvoyer une autre valeur. Dans l’exemple ci-dessous, si la cellule contient le mot « Chaise » alors on affiche le mot « Chaise » dans la cellule. Dans le cas contraire, on n’affiche rien (« » symbolisant une valeur nulle).
= SI( ESTNUM( CHERCHE( "Chaise" ; B3 ) ) ; "Chaise" ; "" )
Avantages
La fonction CHERCHE permet l’utilisation des caractères génériques. On peut ainsi rechercher des valeurs partielles. Dans notre cas, il sera parfois utile d’utiliser le caractère ?
pour indiquer à Excel la présence d’un caractère peu importe celui-ci. Par exemple, pour vérifier si une cellule contient le mot « métro » mais que l’on sait que certains sont écrits avec un accent et d’autres sans, on utilisera la syntaxe suivante :
"m?tro"
De là, la fonction CHERCHE renverra une valeur numérique pour les mots « le metro de… », « un métro urbain », « l’article m2tro« ,…
De la même façon, l’astérixe (*) indique un ou plusieurs caractères. Avec la syntaxe suivante, les valeurs valides seront « le métro de… », « un metronome« , « meetroquoi », « m123tro« , « ma voiture a trop de kilomètres »,…
"m*tro"
Limitations
Cette solution permet de vérifier si une cellule contient un mot, un caractère, une suite de caractères, une suite de mots,… Cependant, elle n’est pas sensible à la casse. C’est-à-dire qu’on ne vérifie pas la présence des majuscules ou minuscules. Il faudra se tourner vers la solution Si cellule contient (sensible à la casse).