Maîtriser la recherche de texte : La fonction CONTIENT dans Excel (et ses alternatives)
La vérification de la présence d'un texte spécifique dans une cellule est une tâche courante dans Excel. Bien qu'il n'existe pas de fonction nommée directement "CONTIENT", Excel offre des outils puissants pour réaliser cette opération. Cet article vous présentera les méthodes les plus efficaces, en utilisant des combinaisons de fonctions telles que CHERCHE, TROUVE, ESTNUM, ESTERR et SI.
Pourquoi simuler la fonction CONTIENT dans Excel ?
L'absence d'une fonction "CONTIENT" dédiée peut sembler déroutante au premier abord. Cependant, la flexibilité d'Excel permet de construire des formules sur mesure pour répondre à des besoins spécifiques. Simuler cette fonction est utile pour :
- Valider des données: Vérifier si une cellule contient un format spécifique (par exemple, un code postal).
- Extraire des informations: Identifier les cellules contenant un mot-clé pertinent pour une analyse.
- Filtrer des données: Sélectionner les lignes d'un tableau contenant un critère de recherche.
- Automatiser des tâches: Créer des règles conditionnelles basées sur la présence d'un texte.
Les fonctions clés pour simuler CONTIENT
Avant de plonger dans les exemples, familiarisons-nous avec les fonctions essentielles :
CHERCHE(texte_cherché;texte_dans_lequel_chercher;[no_départ]): Cette fonction recherche un texte spécifique dans une autre chaîne de texte et renvoie la position de départ de ce texte. Elle n'est pas sensible à la casse.TROUVE(texte_cherché;texte_dans_lequel_chercher;[no_départ]): Similaire àCHERCHE, mais sensible à la casse.ESTNUM(valeur): Vérifie si une valeur est un nombre. RenvoieVRAIsi c'est le cas,FAUXsinon.ESTERR(valeur): Vérifie si une valeur est une erreur. RenvoieVRAIsi c'est le cas,FAUXsinon.SI(test_logique;valeur_si_vrai;valeur_si_faux): Exécute une action en fonction d'une condition. Si letest_logiqueestVRAI, la fonction renvoievaleur_si_vrai; sinon, elle renvoievaleur_si_faux.
Méthode 1 : Utilisation de CHERCHE et ESTNUM
Cette méthode est la plus courante et la plus simple à comprendre. Elle combine les fonctions CHERCHE et ESTNUM pour déterminer si un texte est présent.
Formule : =ESTNUM(CHERCHE("texte_à_chercher";A1))
Explication :
CHERCHE("texte_à_chercher";A1)recherche le texte "texte_à_chercher" dans la cellule A1. Si le texte est trouvé,CHERCHErenvoie la position du texte. Sinon, elle renvoie une erreur#VALEUR!.ESTNUM(...)vérifie si le résultat deCHERCHEest un nombre. SiCHERCHEa trouvé le texte, elle renverra un nombre, etESTNUMrenverraVRAI. SiCHERCHEa renvoyé une erreur,ESTNUMrenverraFAUX.
Exemple :
Supposons que la cellule A1 contienne le texte "Bonjour le monde". Nous voulons savoir si elle contient le mot "monde".
La formule serait : =ESTNUM(CHERCHE("monde";A1))
Le résultat serait VRAI.
Capture d'écran (description textuelle): Une capture d'écran d'une feuille Excel. La cellule A1 contient "Bonjour le monde". La cellule B1 contient la formule =ESTNUM(CHERCHE("monde";A1)) et affiche VRAI.
Méthode 2 : Utilisation de CHERCHE et ESTERR
Cette méthode est une alternative à la précédente, utilisant ESTERR au lieu de ESTNUM.
Formule : =NON(ESTERR(CHERCHE("texte_à_chercher";A1)))
Explication :
CHERCHE("texte_à_chercher";A1)fonctionne comme dans la méthode précédente.ESTERR(...)vérifie si le résultat deCHERCHEest une erreur. SiCHERCHEa trouvé le texte, elle renverra un nombre, etESTERRrenverraFAUX. SiCHERCHEa renvoyé une erreur,ESTERRrenverraVRAI.NON(...)inverse le résultat deESTERR. SiESTERRrenvoieFAUX,NONrenvoieVRAI, et vice versa.
Exemple :
En reprenant l'exemple précédent, avec la cellule A1 contenant "Bonjour le monde", la formule serait :
=NON(ESTERR(CHERCHE("monde";A1)))
Le résultat serait VRAI.
Capture d'écran (description textuelle): Une capture d'écran d'une feuille Excel. La cellule A1 contient "Bonjour le monde". La cellule B1 contient la formule =NON(ESTERR(CHERCHE("monde";A1))) et affiche VRAI.
Méthode 3 : Utilisation de TROUVE (sensible à la casse)
Si vous avez besoin d'une recherche sensible à la casse, remplacez CHERCHE par TROUVE dans les formules précédentes.
Formule : =ESTNUM(TROUVE("texte_à_chercher";A1))
Exemple :
Si la cellule A1 contient "Bonjour le Monde" (avec un 'M' majuscule) et que vous recherchez "monde" (avec un 'm' minuscule), la formule :
=ESTNUM(TROUVE("monde";A1))
renverra FAUX.
Capture d'écran (description textuelle): Une capture d'écran d'une feuille Excel. La cellule A1 contient "Bonjour le Monde". La cellule B1 contient la formule =ESTNUM(TROUVE("monde";A1)) et affiche FAUX.
Méthode 4 : Utilisation de SI pour un résultat plus clair
Pour afficher un résultat plus explicite (par exemple, "Oui" ou "Non" au lieu de VRAI ou FAUX), vous pouvez utiliser la fonction SI.
Formule : =SI(ESTNUM(CHERCHE("texte_à_chercher";A1));"Oui";"Non")
Explication :
La fonction SI teste si ESTNUM(CHERCHE("texte_à_chercher";A1)) est VRAI. Si c'est le cas, elle renvoie "Oui". Sinon, elle renvoie "Non".
Exemple :
Avec la cellule A1 contenant "Bonjour le monde", la formule :
=SI(ESTNUM(CHERCHE("monde";A1));"Oui";"Non")
renverra "Oui".
Capture d'écran (description textuelle): Une capture d'écran d'une feuille Excel. La cellule A1 contient "Bonjour le monde". La cellule B1 contient la formule =SI(ESTNUM(CHERCHE("monde";A1));"Oui";"Non") et affiche "Oui".
Gérer les erreurs potentielles
Dans certains cas, la cellule A1 peut être vide ou contenir une valeur non textuelle. Cela peut provoquer des erreurs dans les formules précédentes. Pour éviter ces erreurs, vous pouvez ajouter une vérification supplémentaire avec la fonction ESTTEXTE.
Formule : =SI(ET(ESTTEXTE(A1);ESTNUM(CHERCHE("texte_à_chercher";A1)));"Oui";"Non")
Cette formule vérifie d'abord si la cellule A1 contient du texte (ESTTEXTE(A1)). Si c'est le cas, elle exécute la recherche de texte comme précédemment. Sinon, elle renvoie "Non".
Exemples pratiques et cas d'utilisation
- Validation de données: Vérifier si une cellule contient un code postal valide (par exemple, "75001").
=ESTNUM(CHERCHE("75";A1)) - Extraction d'informations: Identifier les emails contenant le domaine "@example.com".
=ESTNUM(CHERCHE("@example.com";A1)) - Filtrage de données: Utiliser la fonction
SIpour créer une colonne d'aide pour le filtrage. Par exemple, si une colonne contient des descriptions de produits, vous pouvez créer une colonne qui affiche "Oui" si la description contient le mot "rouge" et "Non" sinon. Vous pouvez ensuite filtrer sur cette colonne pour afficher uniquement les produits rouges.
Bonnes pratiques et astuces
- Utilisez des références de cellules: Au lieu d'écrire le texte à rechercher directement dans la formule, utilisez une référence de cellule. Cela rendra votre formule plus flexible et plus facile à modifier.
- Combinez avec d'autres fonctions: La fonction
CONTIENTsimulée peut être combinée avec d'autres fonctions Excel pour des analyses plus complexes. - Testez vos formules: Assurez-vous de tester vos formules avec différents exemples pour vérifier qu'elles fonctionnent correctement.
- Documentez vos formules: Ajoutez des commentaires à vos formules pour expliquer ce qu'elles font. Cela facilitera la compréhension et la maintenance de vos feuilles de calcul.
Erreurs courantes à éviter
- Oublier de gérer les erreurs: Ne pas tenir compte des erreurs potentielles (par exemple, une cellule vide) peut entraîner des résultats incorrects.
- Utiliser la mauvaise fonction: Utiliser
CHERCHEau lieu deTROUVEsi vous avez besoin d'une recherche sensible à la casse, ou vice versa. - Ne pas tester suffisamment vos formules: Ne pas tester vos formules avec différents exemples peut vous amener à manquer des erreurs.
Conclusion
Bien qu'Excel ne possède pas de fonction "CONTIENT" dédiée, les méthodes présentées dans cet article vous permettent de simuler cette fonction de manière efficace. En combinant les fonctions CHERCHE, TROUVE, ESTNUM, ESTERR et SI, vous pouvez facilement vérifier si une cellule contient un texte spécifique et automatiser des tâches complexes. N'hésitez pas à expérimenter avec ces formules et à les adapter à vos besoins spécifiques. La maîtrise de ces techniques vous permettra d'optimiser votre travail avec Excel et de gagner en productivité.