La formule Excel SI contient texte alors valeur : le guide complet
La formule SI est un pilier d'Excel, permettant d'effectuer des tests logiques et de renvoyer différentes valeurs selon que le test est vrai ou faux. Combinée à d'autres fonctions, elle devient un outil extrêmement puissant. Dans cet article, nous allons explorer comment l'utiliser pour vérifier si une cellule contient un texte spécifique et renvoyer une valeur en conséquence.
Comprendre la formule SI
La syntaxe de base de la formule SI est la suivante :
=SI(test_logique; valeur_si_vrai; valeur_si_faux)
- test_logique: C'est la condition que vous évaluez. Elle doit renvoyer VRAI ou FAUX.
- valeur_si_vrai: C'est la valeur que la formule renvoie si le test logique est VRAI.
- valeur_si_faux: C'est la valeur que la formule renvoie si le test logique est FAUX.
Le défi : détecter la présence d'un texte
La formule SI seule ne suffit pas pour vérifier si une cellule contient un texte. Nous avons besoin d'une fonction qui puisse rechercher un texte à l'intérieur d'une cellule et renvoyer une information exploitable pour notre test logique. C'est là que les fonctions CHERCHE et ESTNUM entrent en jeu.
Utiliser la fonction CHERCHE
La fonction CHERCHE recherche une chaîne de caractères à l'intérieur d'une autre chaîne de caractères et renvoie la position de départ de la première occurrence. Sa syntaxe est la suivante :
=CHERCHE(texte_cherché; texte_où_chercher; [no_départ])
- texte_cherché: Le texte que vous voulez trouver.
- texte_où_chercher: La cellule ou le texte dans lequel vous effectuez la recherche.
- [no_départ]: (Facultatif) La position de départ de la recherche. Si omis, la recherche commence au début du texte.
Si CHERCHE trouve le texte, elle renvoie un nombre (la position). Si elle ne le trouve pas, elle renvoie une erreur #VALEUR!.
Combiner CHERCHE et ESTNUM
La fonction ESTNUM vérifie si une valeur est un nombre et renvoie VRAI si c'est le cas, et FAUX sinon. Nous allons l'utiliser pour transformer le résultat de CHERCHE en une valeur booléenne (VRAI ou FAUX) exploitable par la fonction SI.
La formule combinée est :
=ESTNUM(CHERCHE(texte_cherché; texte_où_chercher))
Cette formule renvoie VRAI si texte_cherché est trouvé dans texte_où_chercher, et FAUX sinon.
La formule complète : SI contient texte alors valeur
Maintenant, nous pouvons combiner tout cela dans une formule SI complète :
=SI(ESTNUM(CHERCHE(texte_cherché; texte_où_chercher)); valeur_si_vrai; valeur_si_faux)
Exemple concret :
Supposons que vous ayez une liste de noms de produits dans la colonne A et que vous souhaitiez vérifier si le mot "écran" est présent dans le nom du produit. Si c'est le cas, vous voulez afficher "Écran détecté", sinon, afficher "Pas d'écran".
La formule à utiliser dans la colonne B (à partir de B1) serait :
=SI(ESTNUM(CHERCHE("écran";A1));"Écran détecté";"Pas d'écran")
Explication :
A1est la cellule contenant le nom du produit."écran"est le texte que nous recherchons."Écran détecté"est la valeur qui sera affichée si le mot "écran" est trouvé."Pas d'écran"est la valeur qui sera affichée si le mot "écran" n'est pas trouvé.
Vous pouvez ensuite copier cette formule vers le bas pour l'appliquer à toute votre liste de produits.
Exemple plus complexe : sensibilité à la casse
Par défaut, la fonction CHERCHE n'est pas sensible à la casse (elle ne fait pas la distinction entre majuscules et minuscules). Si vous avez besoin d'une recherche sensible à la casse, vous devez utiliser la fonction TROUVE à la place de CHERCHE. La syntaxe de TROUVE est identique à celle de CHERCHE.
La formule deviendrait alors :
=SI(ESTNUM(TROUVE("écran";A1));"Écran détecté";"Pas d'écran")
Dans cet exemple, la recherche ne détectera que le mot "écran" écrit exactement ainsi, avec un "é" minuscule.
Gérer les erreurs potentielles
Si la cellule texte_où_chercher est vide, la fonction CHERCHE renverra une erreur #VALEUR!. Pour éviter cela, vous pouvez ajouter une condition supplémentaire à votre formule SI en utilisant la fonction ESTVIDE.
La formule complète et robuste serait :
=SI(ESTVIDE(A1);"Cellule vide";SI(ESTNUM(CHERCHE("écran";A1));"Écran détecté";"Pas d'écran"))
Explication :
ESTVIDE(A1)vérifie si la cellule A1 est vide.- Si A1 est vide, la formule renvoie "Cellule vide".
- Sinon, elle effectue la recherche du mot "écran" comme précédemment.
Autres applications et astuces
- Rechercher plusieurs mots-clés : Vous pouvez imbriquer plusieurs fonctions
SIpour rechercher différents mots-clés. Par exemple, pour vérifier si une cellule contient soit "écran" soit "clavier", vous pouvez utiliser la formule :
=SI(ESTNUM(CHERCHE("écran";A1));"Écran détecté";SI(ESTNUM(CHERCHE("clavier";A1));"Clavier détecté";"Aucun des deux"))
-
Renvoyer une valeur différente selon le mot-clé trouvé : Vous pouvez utiliser la position renvoyée par
CHERCHEpour extraire une partie du texte. Par exemple, vous pouvez extraire le prix d'un produit si le mot "prix" est trouvé dans la description. -
Utiliser des références de cellules pour le texte recherché : Au lieu d'écrire directement le texte à rechercher dans la formule, vous pouvez utiliser une référence de cellule. Cela rend votre formule plus flexible et facile à modifier. Par exemple, si la cellule C1 contient le mot "écran", vous pouvez utiliser la formule :
=SI(ESTNUM(CHERCHE(C1;A1));"Écran détecté";"Pas d'écran")
Erreurs courantes à éviter
-
Oublier les guillemets : Lorsque vous spécifiez le texte à rechercher directement dans la formule, assurez-vous de le mettre entre guillemets doubles (
"). Sinon, Excel pensera que vous faites référence à une cellule ou à une plage de cellules. -
Confondre CHERCHE et TROUVE : Rappelez-vous que
CHERCHEn'est pas sensible à la casse, tandis queTROUVEl'est. Choisissez la fonction appropriée en fonction de vos besoins. -
Ne pas gérer les erreurs : Prévoyez les erreurs potentielles, comme les cellules vides ou les erreurs
#VALEUR!, en utilisant les fonctionsESTVIDEetESTERREUR. -
Complexifier inutilement la formule : Essayez de garder votre formule aussi simple que possible. Si vous avez besoin de faire des tests logiques complexes, envisagez d'utiliser des colonnes intermédiaires pour simplifier la formule finale.
Alternatives à la formule SI combinée
Bien que la combinaison de SI, ESTNUM et CHERCHE soit une méthode courante, il existe d'autres approches pour vérifier si une cellule contient un texte.
-
Fonctions personnalisées (VBA) : Si vous avez besoin de faire des recherches très spécifiques ou complexes, vous pouvez créer une fonction personnalisée en utilisant VBA (Visual Basic for Applications). Cela vous permet de définir votre propre logique de recherche et de la réutiliser facilement.
-
Power Query : Power Query est un outil puissant d'Excel qui permet d'importer, de transformer et de charger des données. Vous pouvez l'utiliser pour filtrer les lignes qui contiennent un certain texte.
Conclusion
La formule Excel SI contient texte alors valeur est un outil précieux pour automatiser des tâches et prendre des décisions basées sur le contenu de vos cellules. En combinant la formule SI avec les fonctions CHERCHE (ou TROUVE) et ESTNUM, vous pouvez facilement vérifier si une cellule contient un texte spécifique et renvoyer une valeur en conséquence. N'hésitez pas à expérimenter avec les exemples et les astuces présentés dans cet article pour maîtriser cette technique et l'appliquer à vos propres besoins.