Formules Excel

Votre Formule Excel SI CONTIENT ne fonctionne pas ? Voici pourquoi !

14 janvier 2026 1 vues

La formule Excel `SI CONTIENT` est un outil puissant pour automatiser vos analyses de données. Elle permet de vérifier si une cellule contient un texte spécifique et d'effectuer des actions différentes en fonction du résultat. Cependant, il n'existe pas de formule `SI CONTIENT` native dans Excel. Heureusement, en combinant les fonctions `SI`, `CHERCHE` (ou `TROUVE`) et `ESTNUM`, vous pouvez facilement créer une formule équivalente et résoudre des problèmes complexes. Cet article vous guide pas à pas pour maîtriser cette technique essentielle.

Comprendre l'utilité de la formule Excel SI CONTIENT

La formule SI CONTIENT (ou plutôt son équivalent combiné) est extrêmement utile lorsque vous devez analyser des données textuelles dans Excel. Imaginez que vous ayez une liste de noms de produits et que vous souhaitiez identifier ceux qui contiennent le mot "chaussure". Ou encore, une liste d'adresses e-mail et vous voulez extraire celles qui appartiennent à un domaine spécifique. Dans ces cas, une formule SI CONTIENT vous permet d'automatiser le processus et d'éviter de devoir parcourir manuellement chaque cellule.

Elle est particulièrement pertinente pour:

  • Filtrer des données: Identifier rapidement les lignes contenant un certain mot-clé.
  • Catégoriser des informations: Classer automatiquement des éléments en fonction de la présence d'un texte spécifique.
  • Valider des données: S'assurer que des données saisies respectent un certain format (par exemple, vérifier qu'un code produit contient un préfixe spécifique).
  • Automatiser des rapports: Créer des tableaux de bord dynamiques qui se mettent à jour automatiquement en fonction du contenu des cellules.

La formule SI CONTIENT : Comment la créer ?

Comme mentionné précédemment, il n'existe pas de formule SI CONTIENT pré-définie dans Excel. Cependant, vous pouvez facilement la créer en combinant trois fonctions clés :

  1. SI (IF) : Cette fonction permet d'effectuer un test logique et de renvoyer une valeur si le test est vrai et une autre valeur si le test est faux. Sa syntaxe est SI(test_logique; valeur_si_vrai; valeur_si_faux). Par exemple, =SI(A1>10; "Supérieur à 10"; "Inférieur ou égal à 10").
  2. CHERCHE (SEARCH) ou TROUVE (FIND) : Ces fonctions recherchent une chaîne de caractères dans une autre chaîne de caractères et renvoient la position de début de la première occurrence. La différence principale est que CHERCHE n'est pas sensible à la casse (majuscules/minuscules), tandis que TROUVE l'est. Leur syntaxe est CHERCHE(texte_cherché; texte_dans_lequel_chercher; [no_départ]) et TROUVE(texte_cherché; texte_dans_lequel_chercher; [no_départ]). Le paramètre [no_départ] est optionnel et indique la position de départ de la recherche.
  3. ESTNUM (ISNUMBER) : Cette fonction vérifie si une valeur est un nombre et renvoie VRAI si c'est le cas, et FAUX sinon. Sa syntaxe est ESTNUM(valeur). Par exemple, =ESTNUM(5) renvoie VRAI et =ESTNUM("texte") renvoie FAUX.

La formule complète : Explication détaillée

La formule combinée pour simuler SI CONTIENT est la suivante :

=SI(ESTNUM(CHERCHE("texte_à_chercher";A1));"Valeur si trouvé";"Valeur si non trouvé")

Ou, si vous souhaitez être sensible à la casse :

=SI(ESTNUM(TROUVE("texte_à_chercher";A1));"Valeur si trouvé";"Valeur si non trouvé")

Décortiquons cette formule étape par étape :

  1. CHERCHE("texte_à_chercher";A1) (ou TROUVE) : Cette partie recherche le texte spécifié ("texte_à_chercher") dans la cellule A1. Si le texte est trouvé, la fonction renvoie la position de début du texte trouvé (un nombre). Si le texte n'est pas trouvé, la fonction renvoie une erreur #VALEUR!.
  2. ESTNUM(...) : Cette partie prend le résultat de la fonction CHERCHE (ou TROUVE) et vérifie si c'est un nombre. Si CHERCHE (ou TROUVE) a trouvé le texte, le résultat est un nombre, et ESTNUM renvoie VRAI. Si CHERCHE (ou TROUVE) a renvoyé une erreur #VALEUR!, ESTNUM renvoie FAUX.
  3. SI(ESTNUM(...);"Valeur si trouvé";"Valeur si non trouvé") : Cette partie utilise le résultat de ESTNUM comme test logique. Si ESTNUM renvoie VRAI (c'est-à-dire que le texte a été trouvé), la formule renvoie la "Valeur si trouvé". Si ESTNUM renvoie FAUX (c'est-à-dire que le texte n'a pas été trouvé), la formule renvoie la "Valeur si non trouvé".

Exemple pratique : Identifier les produits contenant le mot "chaussure"

Imaginons que vous ayez une liste de produits dans la colonne A (A1:A10) et que vous souhaitiez identifier ceux qui contiennent le mot "chaussure". Vous pouvez utiliser la formule suivante dans la colonne B :

=SI(ESTNUM(CHERCHE("chaussure";A1));"Oui";"Non")

Cette formule affichera "Oui" dans la colonne B si le produit dans la colonne A contient le mot "chaussure", et "Non" sinon.

Exemple visuel :

Produit Formule (Colonne B) Résultat (Colonne B)
Chaussure de sport =SI(ESTNUM(CHERCHE("chaussure";A1));"Oui";"Non") Oui
Pantalon =SI(ESTNUM(CHERCHE("chaussure";A2));"Oui";"Non") Non
Chaussures élégantes =SI(ESTNUM(CHERCHE("chaussure";A3));"Oui";"Non") Oui
Sac à main =SI(ESTNUM(CHERCHE("chaussure";A4));"Oui";"Non") Non

(Note: A1, A2, A3, A4 représentent les cellules contenant les noms des produits.)

Exemple pratique : Extraire les adresses e-mail d'un domaine spécifique

Supposons que vous ayez une liste d'adresses e-mail dans la colonne C (C1:C20) et que vous souhaitiez extraire celles qui appartiennent au domaine "@example.com". Vous pouvez utiliser la formule suivante dans la colonne D :

=SI(ESTNUM(CHERCHE("@example.com";C1));C1;"")

Cette formule affichera l'adresse e-mail complète dans la colonne D si elle contient "@example.com", et laissera la cellule vide sinon. Ici, la "Valeur si non trouvé" est une chaîne vide ("").

Utiliser TROUVE pour une recherche sensible à la casse

Si vous avez besoin d'une recherche qui respecte la casse (majuscules/minuscules), remplacez CHERCHE par TROUVE. Par exemple, si vous voulez trouver uniquement les occurrences exactes de "Chaussure" (avec un C majuscule) dans la liste de produits, utilisez :

=SI(ESTNUM(TROUVE("Chaussure";A1));"Oui";"Non")

Cette formule ne renverra "Oui" que si le mot "Chaussure" (avec un C majuscule) est présent. Si le mot est écrit "chaussure" (avec un c minuscule), la formule renverra "Non".

Erreurs courantes et comment les éviter

L'utilisation de la formule SI CONTIENT combinée peut parfois entraîner des erreurs. Voici les plus courantes et comment les éviter :

  • Erreur #VALEUR! : Cette erreur se produit lorsque la fonction CHERCHE (ou TROUVE) ne trouve pas le texte recherché. La fonction renvoie alors une erreur, que ESTNUM transforme en FAUX. Cela ne casse pas la formule, mais il est important de comprendre pourquoi elle se produit. Vérifiez que le texte que vous recherchez est bien présent dans la cellule et que la casse est correcte si vous utilisez TROUVE.
  • Résultats inattendus avec CHERCHE : Étant donné que CHERCHE n'est pas sensible à la casse, elle peut trouver des correspondances que vous ne souhaitez pas. Par exemple, si vous recherchez "chat", elle trouvera également "ChAT". Si vous avez besoin d'une recherche précise, utilisez TROUVE.
  • Oublier les guillemets : N'oubliez pas d'entourer le texte que vous recherchez de guillemets doubles ("). Sinon, Excel interprétera le texte comme un nom de variable.
  • Utiliser des caractères spéciaux : Si le texte que vous recherchez contient des caractères spéciaux (comme *, ?, ~), vous devrez les échapper en les précédant d'un tilde (~). Par exemple, pour rechercher "Est-ce que ?", vous devrez utiliser CHERCHE("Est-ce que ~?";A1).

Alternatives à la formule SI CONTIENT

Bien que la formule combinée SI, CHERCHE (ou TROUVE) et ESTNUM soit une solution efficace, il existe d'autres alternatives, notamment :

  • Fonctions SOMME.SI.ENS et NB.SI.ENS avec des caractères génériques : Ces fonctions permettent de compter ou de sommer des valeurs en fonction de plusieurs critères, y compris la présence d'un certain texte. Vous pouvez utiliser des caractères génériques comme * (qui représente n'importe quel nombre de caractères) pour rechercher des cellules contenant un texte spécifique. Par exemple, =NB.SI.ENS(A1:A10;"*chaussure*") comptera le nombre de cellules dans la plage A1:A10 qui contiennent le mot "chaussure".
  • Power Query (Get & Transform Data) : Power Query est un outil puissant pour l'extraction, la transformation et le chargement de données. Il offre des fonctionnalités avancées pour la manipulation de texte, y compris la possibilité de rechercher et de filtrer des données en fonction de critères complexes. Power Query est particulièrement utile lorsque vous travaillez avec de grandes quantités de données ou que vous devez effectuer des transformations complexes.
  • VBA (Visual Basic for Applications) : Si vous avez besoin d'une solution très personnalisée, vous pouvez utiliser VBA pour créer une fonction personnalisée SI CONTIENT. VBA offre une flexibilité maximale, mais nécessite des connaissances en programmation.

Conseils et astuces pour optimiser votre formule SI CONTIENT

  • Utilisez des références de cellules pour le texte à rechercher : Au lieu d'écrire directement le texte à rechercher dans la formule, utilisez une référence de cellule. Cela vous permettra de modifier facilement le texte recherché sans avoir à modifier la formule elle-même. Par exemple, si vous mettez le texte "chaussure" dans la cellule C1, vous pouvez utiliser la formule =SI(ESTNUM(CHERCHE(C1;A1));"Oui";"Non").
  • Combinez la formule SI CONTIENT avec d'autres fonctions : Vous pouvez combiner la formule SI CONTIENT avec d'autres fonctions Excel pour effectuer des analyses plus complexes. Par exemple, vous pouvez l'utiliser avec la fonction CONCATENER pour extraire et combiner des informations de différentes cellules.
  • Utilisez la mise en forme conditionnelle : Vous pouvez utiliser la mise en forme conditionnelle pour mettre en évidence les cellules qui contiennent un certain texte. Cela peut vous aider à identifier rapidement les données qui vous intéressent.

En conclusion, bien qu'il n'existe pas de formule SI CONTIENT native dans Excel, vous pouvez facilement en créer une en combinant les fonctions SI, CHERCHE (ou TROUVE) et ESTNUM. Cette technique vous permet d'automatiser vos analyses de données textuelles et de gagner un temps précieux. N'hésitez pas à expérimenter avec les différents exemples et astuces présentés dans cet article pour maîtriser cette compétence essentielle d'Excel.

Questions fréquentes

Comment faire une formule SI CONTIENT sans tenir compte de la casse ?

Utilisez la fonction `CHERCHE` au lieu de `TROUVE` dans votre formule. `CHERCHE` n'est pas sensible à la casse, ce qui signifie qu'elle trouvera des correspondances même si les majuscules et les minuscules ne correspondent pas exactement.

Pourquoi ma formule SI CONTIENT renvoie-t-elle toujours FAUX ?

Vérifiez que le texte que vous recherchez est bien présent dans la cellule et que vous utilisez les guillemets correctement. Assurez-vous également que vous utilisez la bonne fonction (`CHERCHE` ou `TROUVE`) en fonction de vos besoins en matière de sensibilité à la casse.

Puis-je utiliser la formule SI CONTIENT avec plusieurs critères ?

Oui, vous pouvez combiner plusieurs formules `SI CONTIENT` en utilisant les fonctions `ET` et `OU`. Par exemple, vous pouvez vérifier si une cellule contient à la fois le mot "chaussure" et le mot "sport".

Mots-clés associés :

excel si contient texte excel si contient liste excel si contient plusieurs excel si contient cellule formule excel recherche texte excel contient fonction excel recherche partielle excel si contient alors

Partager cet article :