Erreurs courantes avec les formules

Dans ce document d’aide

DĂ©couvrez les erreurs courantes que vous pourriez rencontrer avec les formules dans Notion, et comment vous pouvez les rĂ©soudre. 🔹


Si vous ne savez pas comment rĂ©soudre les erreurs de votre formule, l’IA de Notion peut vous aider. En savoir plus ici →

Si vous n’avez pas accĂšs Ă  une base de donnĂ©es rĂ©fĂ©rencĂ©e, les formules ne pourront pas effectuer de calculs de maniĂšre fiable. En effet, les formules nĂ©cessitent un accĂšs Ă  la base de donnĂ©es source et aux configurations de ses propriĂ©tĂ©s.

Comment résoudre le problÚme

Assurez-vous d’avoir accĂšs Ă  toutes les pages et bases de donnĂ©es rĂ©fĂ©rencĂ©es dans la formule de votre bouton ou automatisation de base de donnĂ©es.

Contrairement aux propriĂ©tĂ©s de formule dans les bases de donnĂ©es, les formules dans les automatisations attendent un type de retour spĂ©cifique (ex. : date, texte, nombre, personne). Sinon, l’automatisation ne pourra pas ĂȘtre enregistrĂ©e ni exĂ©cutĂ©e correctement.

Comment résoudre le problÚme

Assurez-vous que la formule renvoie le type de valeur correct. Par exemple, si vous Ă©crivez une formule pour dĂ©finir la valeur d’une propriĂ©tĂ© Personne d’une page, la formule doit renvoyer un utilisateur ou une liste d’utilisateurs, et non une date. Par ailleurs, si vous Ă©valuez une condition spĂ©cifique sur une propriĂ©tĂ© de type tableau (ex. : sĂ©lection multiple), assurez-vous d’utiliser .includes au lieu de == dans votre instruction if().

Une cause frĂ©quente de cette erreur est l’utilisation d’un type diffĂ©rent pour reprĂ©senter une valeur vide. Par exemple, dans une formule telle que if(Date, Date.dateAdd(1, “day”), “”), le type de retour est inconnu car il pourrait s’agir d’une date ou d’un texte (en raison de “”). Cela peut ĂȘtre corrigĂ© en utilisant empty() pour reprĂ©senter les valeurs vides ; la formule corrigĂ©e ressemblerait donc Ă  if(Date, Date.dateAdd(1, “day”), empty()).

Les formules Notion ne peuvent ĂȘtre imbriquĂ©es que sur 15 niveaux. Chaque fois qu’une formule fait rĂ©fĂ©rence Ă  une autre formule ou Ă  une agrĂ©gation, elle ajoute un niveau. Cela s’applique mĂȘme si la formule se trouve dans une base de donnĂ©es diffĂ©rente.

Lorsque cette limite est atteinte, Notion affiche un message d’erreur.

Comment résoudre le problÚme

Simplifiez votre configuration en combinant les formules et les agrĂ©gations inutiles dans un nombre rĂ©duit de propriĂ©tĂ©s. Identifiez les endroits oĂč plusieurs formules effectuent des tĂąches similaires et essayez de les fusionner en une seule.

Si des variables personnalisĂ©es sont dĂ©finies dans la mĂȘme action d’automatisation, elles ne peuvent pas se rĂ©fĂ©rencer les unes les autres.

Par exemple, si vous dĂ©finissez var1 et var2 dans la mĂȘme action, var2 ne pourra pas utiliser var1 dans sa dĂ©finition.

Comment résoudre le problÚme

Définissez chaque variable dans sa propre action distincte. Pour ce faire, créez la premiÚre variable, ajoutez une nouvelle action à votre automatisation et définissez la variable suivante séparément. Cela garantit que chaque variable est correctement reconnue.

À ce jour, les variables dĂ©finies dans une automatisation ne peuvent pas ĂȘtre utilisĂ©es pour filtrer les pages dans les bases de donnĂ©es sur lesquelles vous souhaitez que l’automatisation agisse (par exemple : « Modifier les pages correspondant au filtre contenant la variable »).

Comment résoudre le problÚme

  1. Définissez une variable personnalisée comme Cette page en tapant Page de déclenchement dans la zone de formule.

  2. Ajoutez une action Modifier une page et sĂ©lectionnez la variable personnalisĂ©e de l’étape 1 comme cible.

Lorsque vous travaillez avec des propriĂ©tĂ©s de relation, d’agrĂ©gation et de Personne dans des formules, celles-ci renvoient une liste de pages ou de personnes. Pour rĂ©fĂ©rencer des propriĂ©tĂ©s au sein de la relation, vous devez dĂ©finir le premier Ă©lĂ©ment, sinon votre Automatisation interrompra. Vous pourriez Ă©galement rencontrer ce problĂšme lors de la crĂ©ation d’une formule utilisant la fonction map pour une propriĂ©tĂ© de relation.

Comment résoudre le problÚme

Utilisez des fonctions comme .first() ou .at(0) pour obtenir le premier élément, ou parcourir la liste des pages avec des fonctions comme .map(), .filter(), .every(), .some() et .find().

Si une formule rencontre de maniùre inattendue une valeur vide (le plus souvent une valeur de date ou de personne), l’automatisation recevra une erreur et se mettra automatiquement en pause.

Comment résoudre le problÚme

Utilisez if ou ifs pour vĂ©rifier qu’une propriĂ©tĂ© sur laquelle vous effectuez une opĂ©ration possĂšde une valeur. Par exemple, au lieu de Date.dateAdd(1, “day”), il est prĂ©fĂ©rable d’utiliser if(Date, Date.dateAdd(1, “day”), empty()). Cela garantit que dateAdd n’est effectuĂ© que lorsque la valeur de Date est prĂ©sente, et indique explicitement Ă  l’Automatisation d’effacer la propriĂ©tĂ© mise Ă  jour lorsque Date n’est pas renseignĂ©e. Sinon, configurez une vue avec un filtre qui garantit l’existence de la valeur de la propriĂ©tĂ© sur laquelle vous travaillez, et configurez l’Automatisation pour qu’elle ne s’exĂ©cute que sur les pages de cette vue.

Si votre formule ne fonctionne pas comme prĂ©vu, cela peut ĂȘtre dĂ» Ă  une erreur de syntaxe telle que des parenthĂšses manquantes, des opĂ©rateurs incorrects ou des fonctions non prises en charge. Pour une prĂ©sentation complĂšte de la syntaxe de la formule, lisez cet article →


Donner votre avis

Cette ressource vous a-t-elle été utile ?


Powered by Fruition