Introduction
La notion database formule if condition est LE point de départ pour automatiser intelligemment ton workspace. Ce que personne ne dit, c’est que 80% des automatisations utiles dans Notion reposent sur une seule fonction : IF(). Si tu maîtrises IF, tu peux créer des statuts automatiques, des alertes visuelles, des calculs conditionnels, sans jamais toucher à une API ou un outil externe.
Après avoir testé et retesté des dizaines de formules dans mes projets d’étude et de freelance, je vais te montrer les patterns IF les plus utiles, du plus simple au plus complexe, avec des exemples que tu peux copier-coller directement.
Syntaxe de Base du IF dans Notion
Dans les nouvelles formules Notion (version 2.0, 2023+), la syntaxe est :
⚡ Les meilleurs outils de productivité en 2026
Découvrez notre sélection des outils qui vont transformer votre organisation : Notion, Todoist, Obsidian et plus.
Voir le classement 2026 →if(condition, valeur_si_vrai, valeur_si_faux)
Dans l’ancienne syntaxe (toujours fonctionnelle) :
if(condition, valeurSiVrai, valeurSiFaux)
Exemple le plus simple :
if(prop("Terminé"), "✅ Fait", "⏳ En cours")
Cette formule affiche « ✅ Fait » si la propriété Checkbox « Terminé » est cochée, sinon « ⏳ En cours ».
Les Conditions que tu Peux Utiliser
Conditions sur les Checkbox
prop("Terminé") == true
// ou simplement
prop("Terminé")
Conditions sur les Nombres
prop("Score") >= 80
prop("Budget") > 1000
prop("Priorité") == 1
Conditions sur les Textes
prop("Statut") == "En cours"
contains(prop("Tags"), "urgent")
empty(prop("Description")) // est vide ?
Conditions sur les Dates
prop("Deadline") < now() // date dépassée ?
dateBetween(now(), prop("Début"), "days") > 0
Combiner les Conditions
// ET logique
and(prop("Priorité") == "Haute", prop("Terminé") == false)
// OU logique
or(prop("Statut") == "Bloqué", prop("Statut") == "En retard")
// NON logique
not(prop("Terminé"))
Exemples Pratiques — du Simple au Complexe
Exemple 1 : Indicateur de priorité visuel (Débutant)
if(prop("Priorité") == "Haute", "🔴",
if(prop("Priorité") == "Moyenne", "🟡", "🟢"))
Résultat : une colonne « Icône » qui affiche 🔴/🟡/🟢 selon la priorité. Ultra lisible dans un tableau.
Exemple 2 : Alerte deadline dépassée (Débutant)
if(and(prop("Deadline") < now(), not(prop("Terminé"))), "⚠️ En retard", "")
Affiche « ⚠️ En retard » seulement si la deadline est passée ET que la tâche n’est pas terminée. Colonne vide sinon.
Exemple 3 : Calcul de jours restants avec état (Intermédiaire)
if(empty(prop("Deadline")), "Pas de deadline",
if(prop("Terminé"), "✅ Terminé",
if(dateBetween(prop("Deadline"), now(), "days") < 0, "🔴 " + format(abs(dateBetween(prop("Deadline"), now(), "days"))) + " jours de retard",
if(dateBetween(prop("Deadline"), now(), "days") <= 3, "🟡 " + format(dateBetween(prop("Deadline"), now(), "days")) + " jours restants",
"🟢 " + format(dateBetween(prop("Deadline"), now(), "days")) + " jours restants"))))
Cette formule gère 5 cas :
- Pas de deadline → « Pas de deadline »
- Tâche terminée → « ✅ Terminé »
- En retard → « 🔴 X jours de retard »
- Deadline dans 3 jours ou moins → « 🟡 X jours restants »
- Deadline confortable → « 🟢 X jours restants »
Exemple 4 : Score automatique de niche (Mon usage en startup)
if(and(prop("Marché") == "Grand", prop("Concurrence") == "Faible"), "🏆 Opportunité majeure",
if(or(prop("Marché") == "Grand", prop("Concurrence") == "Faible"), "👍 Intéressant",
if(prop("Concurrence") == "Forte", "⚠️ Difficile", "🤔 À évaluer")))
Pratique pour évaluer rapidement des opportunités business dans une base de données.
Exemple 5 : Classification automatique budget (Avancé)
if(empty(prop("Budget")), "Non renseigné",
if(prop("Budget") < 100, "💚 Micro",
if(prop("Budget") < 1000, "💛 Petit",
if(prop("Budget") < 10000, "🔶 Moyen",
"🔴 Gros budget"))))
Exemple 6 : Statut de facturation automatique
if(prop("Facturé"),
if(prop("Payé"), "✅ Soldé", "⏳ En attente de paiement"),
if(prop("Livré"), "📋 À facturer", "🔨 En production"))
Quatre états automatiques selon deux Checkbox : Facturé et Payé.
IF avec les Propriétés de Relation et Rollup
Tu peux combiner IF avec des Rollups pour créer des indicateurs de santé basés sur les données agrégées.
Exemple : Santé d’un projet basée sur le % d’avancement
if(prop("Rollup_Progression") >= 0.8, "🟢 Presque terminé",
if(prop("Rollup_Progression") >= 0.5, "🟡 En bonne voie",
if(prop("Rollup_Progression") >= 0.2, "🟠 Démarrage",
"🔴 Pas commencé")))
Où Rollup_Progression est un Rollup qui calcule le % de cases cochées dans les tâches liées.
Erreurs Fréquentes et Solutions
Erreur 1 : Guillemets incorrects
Notion n’accepte pas les guillemets « typographiques » ( » « ). Utilise uniquement les guillemets droits (« ).
Erreur 2 : Type de retour incohérent
Un IF doit retourner le même type dans les deux branches. Si la branche « vrai » retourne du texte, la branche « faux » doit aussi retourner du texte (utilise « » pour une chaîne vide, pas 0).
Incorrect :
if(prop("Terminé"), "Fait", 0) // texte vs nombre → erreur
Correct :
if(prop("Terminé"), "Fait", "") // texte vs texte → OK
Erreur 3 : Propriété mal référencée
Vérifie que le nom entre guillemets dans prop() correspond exactement au nom de ta propriété, espaces et majuscules inclus.
Erreur 4 : Trop de niveaux imbriqués
Notion supporte environ 20 niveaux d’imbrication IF, mais au-delà de 5-6, la formule devient illisible et difficile à maintenir. Si tu dépasses ce seuil, décompose en plusieurs propriétés formule intermédiaires.
Tester tes Formules
La meilleure façon de tester une formule IF complexe :
- Crée une entrée de test dans ta base avec des valeurs spécifiques
- Vérifie que la formule retourne la valeur attendue
- Teste chaque branche (chaque cas possible)
- Teste les cas limites (valeurs vides, valeurs à la frontière)
Notion affiche les erreurs de formule en rouge avec un message descriptif. Lis attentivement ces messages — ils t’indiquent précisément où est le problème.
FAQ
Q: Peut-on utiliser IF pour calculer une date conditionnellement ?
R: Oui. Les deux branches d’un IF peuvent retourner des dates. Exemple : if(prop("Urgent"), prop("Deadline"), dateAdd(prop("Deadline"), 7, "days")) — retourne la deadline telle quelle si urgent, sinon ajoute 7 jours.
Q: Comment comparer deux propriétés l’une à l’autre dans un IF ?
R: Directement : if(prop("Score actuel") > prop("Score objectif"), "Objectif atteint", "En dessous de l'objectif"). Tu peux comparer deux propriétés du même type.
Q: Peut-on appeler une formule depuis une autre formule ?
R: Non directement, mais tu peux référencer une propriété Formule depuis une autre propriété Formule avec prop("Nom de ma formule"). Crée des formules intermédiaires pour décomposer les calculs complexes.
Q: Les formules IF se recalculent-elles en temps réel ?
R: Oui, les formules Notion se recalculent automatiquement dès qu’une propriété référencée est modifiée. Il n’y a pas de bouton « calculer » à appuyer.
Q: Comment créer un IF qui vérifie si une valeur est dans une liste ?
R: Utilise plusieurs OR : or(prop("Statut") == "A", prop("Statut") == "B", prop("Statut") == "C"). Notion n’a pas de fonction « IN » native, mais les OR chaînés fonctionnent parfaitement.
Conclusion
La notion database formule if condition est l’outil de base pour rendre ton workspace intelligent. Une fois que tu as internalisé la syntaxe if(condition, vrai, faux) et appris à les imbriquer, tu peux automatiser des dizaines de calculs manuels répétitifs. Commence par l’exemple 1 (indicateur de priorité visuel) — c’est le plus simple et le plus immédiatement visible. Puis progresse vers les alertes de deadline et les statuts automatiques. En une heure, tu auras transformé tes bases de données statiques en outils dynamiques.
Guide Productivite
