Comment utiliser contains() pour tester la présence ?
Filtre intelligemment tes données texte avec contains(). Cherche des mots-clés dans n'importe quelle propriété pour des formules conditionnelles précises.

Tu cherches un mot spécifique dans tes descriptions de tâches ? Tu veux filtrer automatiquement tes projets selon certains mots-clés ? Cette frustration revient constamment quand on veut créer des formules avancées dans ses bases Notion.
La fonction contains() résout exactement cette problématique. Elle te permet de détecter la présence de n'importe quel texte dans tes propriétés grâce à une syntaxe simple mais puissante. Cette fonction devient incontournable pour créer des formules conditionnelles vraiment utiles.
Qu'est-ce que contains() et pourquoi l'utiliser dans Notion ?
Dans tes bases de données Notion, tu as souvent besoin de savoir si une propriété texte contient un mot particulier. Par exemple, vérifier si une description de tâche mentionne "urgent", ou si un titre de projet contient le nom d'un client spécifique.
La fonction contains() te permet de faire ce filtre. Cette méthode teste automatiquement la présence d'un texte dans n'importe quelle propriété et retourne "true" si le texte est trouvé, "false" sinon. Tu transformes ainsi tes bases statiques en systèmes dynamiques qui s'adaptent au contenu.
À travers mes accompagnements sur Notion, cette fonction revient assez régulièrement dans l’implémentation de formules avancées que mes clients utilisent au quotidien. C'est devenu un outil indispensable pour créer des automatisations basées sur le contenu textuel.
Comment utiliser contains() dans tes formules Notion ?
Structure de base dans les propriétés Formule
La méthode standard pour tester la présence :
contains(prop("Propriété à tester"), "texte recherché")
La fonction contains() utilise deux paramètres essentiels :
- Premier paramètre : La propriété dans laquelle chercher (généralement une propriété Texte, Titre ou Texte enrichi)
- Deuxième paramètre : Le texte exact à rechercher (sensible à la casse)
Détecter un mot-clé dans une description :
contains(prop("Description"), "urgent")
Résultat : true si la description contient le mot "urgent"
Vérifier un nom de client dans un titre :
contains(prop("Titre du projet"), "ACME")
Résultat : true si le titre mentionne "ACME"
Tester plusieurs mots avec des variantes :
contains(prop("Tags"), "Important")
Résultat : true si les tags incluent exactement "Important"
Ces trois syntaxes de base couvrent la majorité des cas d'usage quotidiens dans tes formules Notion.
Cas d'usage concrets avec contains() dans tes bases
Base de données Tâches
Classification automatique des priorités :
if(contains(prop("Description"), "urgent"), "🔥 Priorité haute",
if(contains(prop("Description"), "important"), "🟠 Priorité moyenne",
"📋 Priorité normale"))
Cette formule analyse automatiquement le contenu de tes descriptions pour attribuer une priorité visuelle. Plus besoin de catégoriser manuellement chaque tâche selon son urgence.
Base de données Projets
Identification des types de projets :
if(contains(prop("Titre"), "Site web"), "💻 Développement",
if(contains(prop("Titre"), "Formation"), "🎓 Éducation",
if(contains(prop("Titre"), "Marketing"), "📢 Communication", "📋 Autre")))
Catégorisation intelligente basée sur les mots-clés présents dans les titres de tes projets.
Base de données CRM
Détection automatique du type de demande :
if(contains(prop("Message client"), "bug"), "🐛 Support technique",
if(contains(prop("Message client"), "facture"), "💰 Comptabilité",
if(contains(prop("Message client"), "formation"), "🎯 Formation", "💬 Général")))
Routage automatique des demandes clients selon le contenu de leurs messages.
Base de données Articles
Classification par sujet :
if(contains(prop("Contenu"), "Notion"), "🔧 Productivity",
if(contains(prop("Contenu"), "business"), "💼 Business",
"📝 Général"))
Organisation automatique de ton contenu selon les thématiques abordées.
Ces formules transforment tes bases passives en systèmes intelligents qui analysent et catégorisent automatiquement tes données.
Combinaisons puissantes avec les fonctions Notion
Avec l'opérateur && pour des conditions multiples
Vérifier plusieurs critères simultanément :
if(contains(prop("Description"), "client") && contains(prop("Statut"), "En cours"),
"👤 Projet client actif", "📋 Autre")
Cette combinaison teste la présence de "client" ET le statut "En cours" pour identifier précisément tes projets clients en cours.
Cette combinaison teste la présence de "client" ET le statut "En cours" pour identifier précisément tes projets clients en cours. Pour approfondir l'usage de l'opérateur &&, consulte mon guide complet sur l'opérateur && dans les formules Notion.
Avec empty() pour gérer les propriétés vides
Formule robuste qui gère les cas limites :
if(empty(prop("Description")), "⚠️ Description manquante",
if(contains(prop("Description"), "urgent"), "🔥 Urgent", "📋 Normal"))
Protection contre les erreurs quand certaines descriptions ne sont pas renseignées dans ta base.
Avec not() pour inverser la logique
Identifier ce qui ne contient PAS un texte :
if(not(contains(prop("Tags"), "Archivé")), "✅ Actif", "📦 Archivé")
Utile pour mettre en évidence les éléments qui n'ont pas encore été archivés.
Avec l'opérateur || pour des alternatives
Tester plusieurs mots-clés possibles :
if(contains(prop("Description"), "urgent") || contains(prop("Description"), "critique"),
"🚨 Action immédiate", "📋 Standard")
Cette formule déclenche l'alerte si le texte contient "urgent" OU "critique".
Combinaison avancée pour scoring automatique
Calcul de score basé sur des mots-clés :
(if(contains(prop("Description"), "urgent"), 3, 0) +
if(contains(prop("Description"), "client"), 2, 0) +
if(contains(prop("Description"), "deadline"), 1, 0))
Système de points automatique selon les mots-clés présents dans tes descriptions.
Erreurs courantes et solutions avec contains()
Erreur #1 : Confusion entre contains() et filtres de vue
Piège fréquent : Les filtres de vue Notion ont aussi une option "contains", mais ce n'est pas la même chose que la fonction contains() dans les formules.
❌ Confusion : Utiliser les filtres de vue pour des calculs dynamiques
✅ Correct : contains() dans les propriétés Formule pour des résultats automatiques
Les filtres de vue servent à afficher/masquer des lignes. La fonction contains() sert à calculer des valeurs dans tes formules.
Erreur #2 : Sensibilité à la casse
Problème de majuscules/minuscules :
❌ Risqué : contains(prop("Description"), "URGENT") ne trouvera pas "urgent" en minuscules
✅ Solution : Utiliser des variantes ou combiner plusieurs tests
Notion est sensible à la casse dans contains(). "URGENT" et "urgent" sont considérés comme différents.
Erreur #3 : Recherche de texte partiel inattendue
Attention aux correspondances partielles :
❌ Inattendu : contains(prop("Description"), "port") trouvera aussi "important", "support", "rapport"
✅ Précis : Utiliser des mots complets ou des espaces pour délimiter
contains() trouve le texte même s'il fait partie d'un mot plus long.
Erreur #4 : Oublier la gestion des propriétés vides
Formule fragile :
❌ Risqué : contains(prop("Description optionnelle"), "urgent")
✅ Sécurisé : if(empty(prop("Description")), false, contains(prop("Description"), "urgent"))
Toujours tester si la propriété est vide avant d'utiliser contains() sur des champs optionnels.
Questions fréquentes sur contains() dans Notion
À travers mes formations sur les formules Notion, ces questions reviennent régulièrement sur contains().
Contains() est-il sensible aux accents ?
Oui, contains() fait la différence entre les caractères accentués et non accentués. "élément" ne trouvera pas "element" sans accent.
Si tu gères du contenu avec des variantes d'accents, utilise plusieurs tests :
contains(prop("Texte"), "élément") || contains(prop("Texte"), "element")
Peut-on utiliser contains() avec d'autres types de propriétés ?
contains() fonctionne avec :
- ✅ Propriétés Titre (Title)
- ✅ Propriétés Texte (Text)
- ✅ Propriétés Texte enrichi (Rich text)
- ❌ Propriétés Nombre, Date, Personne, etc.
Comment tester plusieurs mots à la fois ?
Deux approches selon tes besoins :
Tous les mots présents (ET logique) :
contains(prop("Description"), "urgent") && contains(prop("Description"), "client")
Au moins un mot présent (OU logique) :
contains(prop("Description"), "urgent") || contains(prop("Description"), "important")
Contains() fonctionne-t-il dans les rollups ?
Oui, mais avec des nuances. Dans un rollup, contains() teste le texte du rollup résultant, pas chaque élément individuellement.
Pour tester chaque élément d'une relation, utilise plutôt les formules avancées avec filter().
Pour en savoir plus sur les formules avancées avec filter(), consulte la documentation officielle des formules Notion.
Y a-t-il une limite au nombre de caractères recherchés ?
Aucune limite pratique. contains() peut chercher des mots, phrases complètes ou même des paragraphes entiers dans tes propriétés texte.
Révolutionne tes bases Notion avec des formules intelligentes
La méthode contains() transforme tes bases de données Notion de simples listes en systèmes intelligents qui analysent et catégorisent automatiquement tes données. Fini le tri manuel et les oublis de classification.
Cette fonction devient particulièrement puissante quand tu l'combines avec if(), empty() et les opérateurs logiques. Tu créées des formules qui s'adaptent au contenu de tes propriétés et évoluent avec tes données.
Mon conseil d'expert : commence par identifier 2-3 mots-clés récurrents dans tes bases actuelles. Utilise contains() pour les détecter automatiquement et créer des catégories visuelles. L'impact sur ta productivité quotidienne sera immédiat.
Besoin d'un accompagnement personnalisé pour optimiser tes bases Notion ? Découvre mes services de coaching Notion pour transformer ton organisation en quelques semaines.
Envie d'aller plus loin avec les formules Notion ? Mon astuce sur formatDate() pour personnaliser l'affichage des dates et mon guide sur parseDate() pour convertir du texte en date complètent parfaitement cette maîtrise de contains().