Excel SI Contient : Le Guide Complet
La fonction SI d'Excel est un outil puissant pour effectuer des tests logiques et renvoyer différentes valeurs en fonction du résultat. Combinée avec les fonctions CONTENU (ou SEARCH) et ESTNUM, elle devient un allié indispensable pour vérifier si une cellule contient une chaîne de caractères spécifique.
Comprendre les Fonctions Clés
- SI(test_logique, valeur_si_vrai, valeur_si_faux) : Cette fonction évalue un test logique. Si le test est VRAI, elle renvoie
valeur_si_vrai; sinon, elle renvoievaleur_si_faux. - CONTENU(texte_cherché, texte_où_chercher, [no_départ]) :
CONTENU(ouSEARCHdans la version anglaise) recherche une chaîne de caractères (texte_cherché) dans une autre chaîne de caractères (texte_où_chercher) et renvoie la position de départ de la première occurrence detexte_cherché. Sitexte_cherchén'est pas trouvé, la fonction renvoie une erreur#VALUE!. - ESTNUM(valeur) : Cette fonction vérifie si une valeur est un nombre. Elle renvoie
VRAIsi la valeur est un nombre etFAUXdans le cas contraire. Elle est très utile pour détecter l'absence d'une chaîne de caractères, carCONTENUrenvoie une erreur#VALUE!qui n'est pas un nombre, doncESTNUMrenverraFAUX.
Syntaxe de la Formule "Excel SI Contient"
La formule de base pour vérifier si une cellule contient un texte spécifique est la suivante :
=SI(ESTNUM(CONTENU("texte_à_chercher",A1)),"Valeur si trouvé","Valeur si non trouvé")
"texte_à_chercher": La chaîne de caractères que vous recherchez. N'oubliez pas les guillemets.A1: La cellule dans laquelle vous effectuez la recherche. RemplacezA1par la référence de cellule appropriée."Valeur si trouvé": La valeur que la formule renverra si le texte est trouvé."Valeur si non trouvé": La valeur que la formule renverra si le texte n'est pas trouvé.
Exemples Pratiques
Exemple 1: Vérifier si une cellule contient le mot "Important"
Supposons que vous ayez une colonne de descriptions de tâches dans la colonne A et que vous souhaitiez identifier les tâches importantes. Vous pouvez utiliser la formule suivante dans la colonne B :
=SI(ESTNUM(CONTENU("Important",A1)),"Oui","Non")
Explication :
CONTENU("Important",A1)recherche le mot "Important" dans la cellule A1.ESTNUM(...)vérifie si le résultat deCONTENUest un nombre (c'est-à-dire que le mot a été trouvé). Si "Important" est trouvé,CONTENUrenverra un nombre, etESTNUMrenverraVRAI. Si "Important" n'est pas trouvé,CONTENUrenverra une erreur#VALUE!, etESTNUMrenverraFAUX.SI(...)renvoie "Oui" siESTNUMrenvoieVRAI(le mot est trouvé) et "Non" siESTNUMrenvoieFAUX(le mot n'est pas trouvé).
Capture d'écran (description textuelle): Imaginez une feuille Excel. La colonne A contient des descriptions de tâches comme "Préparer la présentation", "Réunion importante avec le client", "Envoyer les rapports". La colonne B, utilisant la formule ci-dessus, affiche "Non" à côté de "Préparer la présentation", "Oui" à côté de "Réunion importante avec le client", et "Non" à côté de "Envoyer les rapports".
Exemple 2: Extraire des informations basées sur la présence d'un mot clé
Imaginez que vous ayez une liste d'adresses e-mail dans la colonne A et que vous vouliez identifier les adresses Gmail. Vous pouvez utiliser la formule suivante dans la colonne B pour extraire le nom de domaine:
=SI(ESTNUM(CONTENU("@gmail.com",A1)),"Gmail","Autre")
Explication:
CONTENU("@gmail.com",A1)recherche la chaîne "@gmail.com" dans la cellule A1.ESTNUM(...)vérifie si la recherche a abouti (c'est-à-dire, si "@gmail.com" a été trouvé).SI(...)renvoie "Gmail" siESTNUMrenvoieVRAI(l'adresse est une adresse Gmail) et "Autre" siESTNUMrenvoieFAUX(l'adresse n'est pas une adresse Gmail).
Capture d'écran (description textuelle): Dans une feuille Excel, la colonne A contient des adresses e-mail comme "jean.dupont@gmail.com", "marie.leclerc@entreprise.fr", "pierre.martin@gmail.com". La colonne B, utilisant la formule, affiche "Gmail" à côté de "jean.dupont@gmail.com", "Autre" à côté de "marie.leclerc@entreprise.fr", et "Gmail" à côté de "pierre.martin@gmail.com".
Exemple 3: Utiliser TROUVE au lieu de CONTENU pour la sensibilité à la casse
La fonction CONTENU n'est pas sensible à la casse. Si vous avez besoin d'une recherche qui respecte la casse (différence entre majuscules et minuscules), utilisez la fonction TROUVE (ou FIND en anglais) à la place. La structure de la formule reste la même :
=SI(ESTNUM(TROUVE("Texte",A1)),"Valeur si trouvé","Valeur si non trouvé")
Important: La fonction TROUVE est sensible à la casse, contrairement à CONTENU.
Astuces et Bonnes Pratiques
- Utiliser des références de cellules pour le texte à chercher: Au lieu d'entrer directement le texte à chercher dans la formule, vous pouvez utiliser une référence de cellule. Cela facilite la modification du texte à chercher sans avoir à modifier la formule elle-même. Par exemple:
=SI(ESTNUM(CONTENU(B1,A1)),"Oui","Non"). La cellule B1 contient le texte que vous recherchez. - Gérer les erreurs: Si vous prévoyez que la cellule puisse être vide, vous pouvez ajouter une vérification supplémentaire pour éviter les erreurs. Par exemple:
=SI(ESTVIDE(A1),"Vide",SI(ESTNUM(CONTENU("texte",A1)),"Oui","Non")) - Combiner avec d'autres fonctions: Vous pouvez combiner la formule "Excel SI Contient" avec d'autres fonctions Excel pour effectuer des analyses plus complexes. Par exemple, vous pouvez utiliser
SOMME.SIpour additionner des valeurs uniquement si une cellule contient un certain texte.
Erreurs Courantes à Éviter
- Oublier les guillemets: N'oubliez pas d'entourer le texte à chercher de guillemets (""). Sinon, Excel interprétera le texte comme un nom de variable.
- Utiliser la mauvaise fonction: Assurez-vous d'utiliser la fonction appropriée (
CONTENUouTROUVE) en fonction de vos besoins (sensibilité à la casse). - Ne pas gérer les erreurs: Anticipez les erreurs potentielles (par exemple, cellules vides) et ajoutez des vérifications supplémentaires à votre formule.
Alternatives à la Formule "Excel SI Contient"
Bien que la combinaison de SI, CONTENU et ESTNUM soit la méthode la plus courante, il existe d'autres approches, notamment l'utilisation des expressions régulières via VBA (Visual Basic for Applications). Cependant, cette méthode est plus avancée et nécessite des connaissances en programmation.
Conclusion
La formule "Excel SI Contient" est un outil puissant pour automatiser la recherche de texte dans vos feuilles de calcul. En combinant les fonctions SI, CONTENU (ou SEARCH) et ESTNUM, vous pouvez facilement identifier, extraire et catégoriser des données en fonction de la présence de mots clés spécifiques. N'hésitez pas à expérimenter avec les exemples présentés et à adapter les formules à vos besoins spécifiques. Vous gagnerez ainsi un temps précieux et améliorerez l'efficacité de vos analyses de données.