Les formules dans Ragic fonctionnent de manière similaire à celles utilisées dans la grande majorité des applications de tableur comme Excel. Dans Excel, les champs sont identifiés en faisant référence aux cellules contenant des valeurs. Cependant, dans Ragic, nous attribuons les formules en nous référant directement à l'en-tête de champ.
Les formules peuvent être utilisées non seulement pour calculer des nombres, mais aussi pour des chaînes de caractères et des dates. Pour garantir des résultats corrects, définissez le type de champ en fonction du type de calcul. Par exemple, utilisez un champ Nombre ou Monnaie lorsque vous appliquez des formules numériques. Cela permet au système d’interpréter correctement la formule et de renvoyer le résultat attendu. Si le type de champ est défini de manière incorrecte, la formule peut ne pas fonctionner comme prévu.
Pour attribuer une formule à un en-tête de champ depuis votre page formulaire, accédez au mode design et sélectionnez l’en-tête de champ. Allez dans le menu Paramètres du champ dans la barre latérale gauche et saisissez votre formule dans l’onglet Formule.
Dans cet exemple, dans la feuille "Commande client", si la formule du champ "Montant dû" (A18) est « Total (A16) + TVA (A17) », vous devez saisir "A16+A17" dans cette cellule. Notez que la formule doit faire référence à l’emplacement des en-têtes de champ.

Une icône fx() apparaît dans le champ auquel la formule est attribuée.

En cliquant sur l'icône, le système mettra automatiquement en surbrillance tous les champs référencés par cette formule.

Pour connaître la liste des formules prises en charge dans Ragic, veuillez consulter le paragraphe suivant.
Remarque : le type de champ Sélection multiple ne peut pas être configuré comme champ de référence pour des formules.
Lorsque vous ne savez pas comment créer des formules, vous pouvez spécifier la règle souhaitée dans le Générateur de formules. Laissez l'IA vous aider !
Remarque : les serveurs privés sur site nécessitent un paramètre pour activer cette fonction. Veuillez consulter cette section pour plus de détails.
Veuillez noter:
1. Décrivez les règles et indiquez la valeur de retour attendue pour ce champ. Par exemple : renvoyer la date du jour.
2. Si vous souhaitez inclure du texte dans votre formule, encadrez-le de guillemets doubles. Par exemple : "date de la transaction".
3. Après avoir configuré la formule, veuillez vérifier manuellement si les résultats correspondent aux résultats attendus.
Pour ouvrir l’interface du générateur de formules, cliquez sur Assistance IA pour formule comme ci-dessous.

Saisissez les règles, puis cliquez sur Générer une formule.

Voici quelques scénarios prédéfinis que vous pouvez sélectionner, puis renseigner les champs en fonction de votre feuille, incluant des formules classiques et des formules d’approbation.
Par exemple, si vous souhaitez que le champ "Livraison gratuite" renvoie "Oui" lorsque le champ "Total" est supérieur au champ "Montant pour livraison gratuite", et "Non" sinon, vous pouvez choisir " Si A1 est supérieur à A2, renvoie 'Y', sinon renvoie 'N' ", puis le modifier pour correspondre aux champs et valeurs de retour concernés.

Une fois terminé, cliquez sur Générer une formule pour générer la formule correspondante ci-dessous. Cliquez sur l’icône "copier" à côté de la formule pour la saisir automatiquement.

Les opérateurs définissent le type de calcul à effectuer sur les arguments d'une formule. Il existe un ordre par défaut pour l'exécution des calculs, mais vous pouvez le modifier en ajoutant des parenthèses.
Remarque : contrairement à Excel, Ragic n'utilise pas deux points (:) comme opérateur de référence pour combiner des plages de cellules.
Pour effectuer des opérations mathématiques de base telles que l'addition, la soustraction ou la multiplication et produire des résultats numériques, veuillez utiliser les opérateurs arithmétiques suivants :
| Opérateur arithmétique | Signification | Exemple |
|---|---|---|
| + (signe plus) | Addition | 3+3 |
| – (signe moins) | Soustraction | 3–1 |
| * (astérisque) | Multiplication | 3*3 |
| / (barre oblique) | Division | 3/3 |
Vous pouvez comparer deux valeurs avec les opérateurs listés ci-dessous. Lorsque deux valeurs sont comparées en utilisant ces opérateurs, le résultat est une valeur logique, soit VRAI (TRUE), soit FAUX (FALSE), utilisable dans des formules conditionnelles.
| Opérateur de comparaison | Signification | Exemple |
|---|---|---|
| = | Egal à | A1=B1 |
| == | Egal à | A1==B1 |
| Supérieur à | A1>B1 | |
| <</td> | Inférieur à | A1 |
| Supérieur ou égal à | A1>=B1 | |
| <= | Inférieur ou égal à | A1<=B1 |
| != | N'est pas égal à | IF(A1!=B1,'yes','no') |
Pour créer des formules avec des chaînes de caractères, vous pouvez utiliser soit des 'guillemets simples', par exemple 'Chaîne avec guillemets simples', soit des "guillemets doubles". Dans ce document, nous utilisons des chaînes de caractères entre guillemets simples mais les deux formats sont acceptables.
Voici la liste des formules et des catégories prises en charge dans Ragic. Veuillez noter que les formules sont sensibles à la casse.
1. Formules de calcul numérique
2. Formules de date et d’heure
3. Formules de chaîne de caractères
6. Formules pour champs à sélection multiple
Formules permettant de calculer des valeurs numériques et des montants, comme l’obtention de sommes, de moyennes, de valeurs maximales et minimales, etc...Pour des explications détaillées et des exemples d'utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| SUM(valeur1,[valeur2],...) | Renvoie la somme de toutes les valeurs de champ. Vous pouvez également utiliser directement le format valeur+valeur2+... pour effectuer cette opération. |
| AVG(valeur1, valeur2,...) | Renvoie la moyenne (moyenne arithmétique) de toutes les valeurs de champ listées. Cette fonction fonctionne aussi avec les sous-tables, où la moyenne de toutes les valeurs référencées est prise en compte dans le calcul. |
| AVERAGE(valeur1, valeur2,...) | Renvoie la moyenne (moyenne arithmétique) de toutes les valeurs de champ listées. Cette fonction fonctionne aussi avec les sous-tables, où la moyenne de toutes les valeurs référencées est prise en compte dans le calcul. |
| MIN(valeur) | Renvoie la plus petite valeur d’un ensemble de champs. Cette formule fonctionne aussi avec les sous-tables. |
| MAX(valeur) | Renvoie la plus grande valeur numérique d’un ensemble de champs. Cette formule fonctionne aussi avec les sous-tables. |
| MODE.SNGL(valeur1,[valeur2],...) | Renvoie la valeur la plus fréquente dans un ensemble de champs. Fonctionne avec les champs indépendants, les sous-tables et les constantes globales. |
| MODE.MULT(valeur1,[valeur2],...) | Renvoie la valeur la plus fréquente dans un ensemble de champs. Fonctionne avec les champs indépendants, les sous-tables et les constantes globales. |
| ABS(valeur) | Renvoie la valeur absolue d’un nombre, c’est-à-dire sa valeur sans aucun signe. |
| CEILING(valeur,[significativité]) | Arrondit le nombre à l’entier supérieur ou au multiple le plus proche de la significativité, en s’éloignant de zéro. La significativité est optionnelle ; si elle n’est pas précisée, l’arrondi se fait à l’entier supérieur. Exemple : CEILING(2.5) retourne 3 ; CEILING(1.5, 0.1) retourne 1.5. |
| FLOOR(valeur,[significativité]) | Arrondit le nombre à l’entier inférieur ou au multiple le plus proche de la significativité, en se rapprochant de zéro. La significativité est optionnelle ; si elle n’est pas précisée, l’arrondi se fait à l’entier inférieur. Exemple : FLOOR(2.5) retourne 2 ; FLOOR(1.58, 0.1) retourne 1.5. |
| ROUND(valeur) | Arrondit un nombre à l’entier le plus proche. |
| ROUND(valeur,N) | Arrondit un nombre à N décimales. |
| ROUNDUP(valeur,N) | Arrondit un nombre vers le haut (en s’éloignant de zéro) à N décimales. |
| ROUNDDOWN(valeur,N) | Arrondit un nombre vers le bas (en le rapprochant de zéro) à N décimales. |
| MROUND(nombre,N) | Arrondit un nombre au multiple de N le plus proche. |
| SQRT(valeur) | Renvoie la racine carrée d'un nombre. |
| COUNT(valeur1,valeur2,...) | Renvoie le nombre total de valeurs de champ. Les valeurs vides ne sont pas comptabilisées lorsqu’il s’agit de champs indépendants, mais elles le sont pour les champs de sous-table. |
| PI() | Renvoie la constante mathématique pi (3.14159265358979), soit le rapport entre la circonférence d’un cercle et son diamètre, avec une précision de 15 chiffres. |
| RAND() | Renvoie un nombre réel aléatoire distribué uniformément, supérieur ou égal à 0 et inférieur à 1. Un nouveau nombre aléatoire est généré à chaque recalcul de la feuille. Pour plus de détails, cliquez ici. |
| POWER(valeur,exposant) | Renvoie le résultat d’un nombre élevé à une puissance. |
| MOD(valeur, diviseur) | Renvoie le reste de la division d’un nombre par un diviseur. Le résultat porte le même signe que le diviseur. Pour plus de détails, cliquez ici. |
| GCD(valeur1,[valeur2],...) | Renvoie le plus grand diviseur commun de deux ou plusieurs entiers. Il s’agit du plus grand entier qui divise tous les nombres spécifiés sans laisser de reste. Pour plus de détails, cliquez ici. |
| LCM(valeur1,[valeur2],...) | Renvoie le plus petit multiple commun à plusieurs entiers. Il s’agit du plus petit entier positif qui est un multiple de toutes les valeurs fournies. Utilisez LCM pour additionner des fractions avec des dénominateurs différents. Pour plus de détails, cliquez ici. |
| PRODUCT() | Multiplie toutes les valeurs numériques des champs référencés (en ignorant les valeurs vides et les textes). Vous pouvez également référencer un champ de sous-table pour multiplier toutes les valeurs numériques de ce champ. Pour plus de détails, cliquez ici. |
| PMT(taux, nbre_paiements, valeur_actuelle, [valeur_future], [type]) | Calcule le paiement pour un prêt. taux (obligatoire) : Le taux d’intérêt. nbre_paiements (obligatoire) : Le nombre total de paiements. valeur_actuelle (obligatoire) : La valeur actuelle ou le capital. valeur_future (optionnel) : La valeur future ou le solde final souhaité après le dernier paiement. Si omis, on suppose que la valeur est 0. type (optionnel) : Indique le moment du paiement. 0 (ou omis) = fin de période ; 1 = début de période. Pour plus de détails, cliquez ici. |
Formules permettant d’obtenir des données liées à la date et à l’heure, comme l’année, le mois, le jour, l’heure ou les jours ouvrés spécifiques. Pour des explications détaillées et des exemples d’utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| TODAY() | Renvoie la date du jour. En cas de recalcul automatique quotidien, veuillez remplacer TODAY() par TODAYTZ(). |
| TODAYTZ() | Renvoie la date du jour en fonction du fuseau horaire local de l’entreprise, tel que défini dans les paramètres de compte. |
| NOW() | Renvoie la date et l’heure actuelles. |
| NOWTZ() | Renvoie la date et l’heure actuelles en fonction du fuseau horaire local de l’entreprise, tel que défini dans les paramètres de compte. |
| EDATE(date_départ, mois) | Renvoie le numéro de série correspondant à la date située un certain nombre de mois avant ou après la date spécifiée. Utile pour calculer des échéances tombant le même jour du mois que la date d’émission. Les deux paramètres sont obligatoires, et date_départ doit être un champ de type date. Pour plus de détails, cliquez ici. |
| EOMONTH(date_départ, mois) | Renvoie le numéro de série correspondant au dernier jour du mois, un certain nombre de mois avant ou après date_départ. Utile pour calculer des échéances tombant en fin de mois. Les deux paramètres sont obligatoires, et date_départ doit être un champ de type date. Pour plus de détails, cliquez ici. |
| YEAR() | Renvoie l’année d’un champ de type date. |
| MONTH() | Renvoie le mois d’un champ de type date. |
| DAY() | Renvoie le jour d’un champ de type date. |
| DATE(année, mois, jour) | Combine les valeurs de champs numériques référencés pour former une date. Utilisez des années à quatre chiffres pour éviter toute confusion. |
| WEEKDAY() | Renvoie le jour de la semaine, sous forme de chiffre de 1 (dimanche) à 7 (samedi). |
| WORKDAY(date_départ, jours, ["jours_fériés"], ["jours_travaillés_supplémentaires"]) | Renvoie une date correspondant à un certain nombre de jours ouvrés avant ou après une date donnée. Pour plus de détails, cliquez ici. |
| WORKDAY.INTL(date_départ, jours, [no_weekend], ["jours_fériés"], ["jours_travaillés_supplémentaires"]) | Renvoie une date après un nombre de jours ouvrés, avec des paramètres personnalisés pour les week-ends. Pour plus de détails, cliquez ici. |
| NETWORKDAYS(date_début, date_fin, ["jours_fériés"], ["jours_travaillés_supplémentaires"]) | Renvoie le nombre de jours ouvrés complets entre une date de début et une date de fin. Pour plus de détails, cliquez ici. |
| NETWORKDAYS.INTL(date_début, date_fin, [no_weekend], ["jours_fériés"], ["jours_travaillés_supplémentaires"]) | Renvoie le nombre de jours ouvrés complets entre deux dates, en utilisant des paramètres personnalisés pour les week-ends. Pour plus de détails, cliquez ici. |
| ISOWEEKNUM(date) | Renvoie le numéro de la semaine ISO pour une date donnée. Chaque semaine commence un lundi. |
| WEEKNUM(Date,[type_retour]) | Renvoie le numéro de la semaine pour une date donnée dans l’année. Le jour de début de la semaine peut être défini. Pour plus de détails, cliquez ici. |
| DATEVALUE(date_texte, format_date) | Permet de convertir une date saisie en texte libre dans un champ en une vraie valeur de type date. Par exemple, si A1 contient “2019/02/01” et que vous souhaitez le convertir en champ de type date, utilisez DATEVALUE(A1,"yyyy/MM/dd"). |
| HOUR() | Permet de convertir une date saisie en texte libre dans un champ en une vraie valeur de type date. Par exemple, si A1 contient “2019/02/01” et que vous souhaitez le convertir en champ de type date, utilisez DATEVALUE(A1,"yyyy/MM/dd"). |
| HOUR() | Il y a trois façons d’utiliser cette formule :
1. Avec une valeur entre 0 et 1, renvoie l’heure correspondante dans 24 h. Ex. : HOUR(0.5) = 12. 2. Avec un champ de type date, renvoie l’heure du champ. Ex. : si A9 vaut "2020/10/30 18:30:19", HOUR(A9) = 18. 3. Avec une date texte, renvoie l’heure. Ex. : HOUR("2020/10/13 17:35:22") = 17. |
| MINUTE() | Il y a trois façons d’utiliser cette formule :
1. Si le paramètre est une valeur numérique comprise entre 0 et 1, elle renvoie le nombre de minutes correspondant à cette proportion de 60 minutes. Par exemple : MINUTE(0.5) = 30 2. Si le paramètre est un champ de type date, elle renvoie la valeur des minutes de ce champ. Par exemple, si le champ A9 contient 2020/10/30 18:50:19, MINUTE(A9) = 50 3. Si le paramètre est une date saisie directement, elle renvoie la valeur des minutes. Par exemple : MINUTE("2020/10/13 17:35:22") = 35. |
| SECOND() | Il y a trois façons d’utiliser cette formule :
1. Si le paramètre est une valeur numérique comprise entre 0 et 1, elle renvoie le nombre de secondes correspondant à cette proportion de 60 secondes. Par exemple : SECOND(0.5) = 30 2. Si le paramètre est un champ de type date, elle renvoie la valeur des secondes de ce champ. Par exemple, si le champ A9 contient 2020/10/30 18:50:19, SECOND(A9) = 19 3. Si le paramètre est une date saisie directement, elle renvoie la valeur des secondes. Par exemple : SECOND("2020/10/13 17:35:22") = 22. |
| TIME(heure, minute, seconde) | Le nombre décimal renvoyé par TIME est une valeur comprise entre 0 (zéro) et 0,99988426, représentant les heures de la journée de 0:00:00 (12:00:00 AM) à 23:59:59 (11:59:59 PM). Heure : un nombre entre 0 et 32767 représentant l’heure. Toute valeur supérieure à 23 sera divisée par 24, et le reste sera utilisé comme valeur d’heure. Exemple : TIME(27, 0, 0) = TIME(3, 0, 0) = 0,125 ou 3:00 AM. Minute : un nombre entre 0 et 32767 représentant les minutes. Toute valeur supérieure à 59 sera convertie en heures et minutes. Exemple : TIME(0, 750, 0) = TIME(12, 30, 0) = 0,520833 ou 12:30 PM. Seconde : un nombre entre 0 et 32767 représentant les secondes. Toute valeur supérieure à 59 sera convertie en heures, minutes et secondes. Exemple : TIME(0, 0, 2000) = TIME(0, 33, 20) = 0,023148 ou 12:33:20 AM. |
Formules permettant d’obtenir des chaînes de caractères à partir des valeurs de champ ou de vérifier leur contenu, comme extraire des caractères, modifier la casse, détecter des valeurs nulles, etc...Pour des explications détaillées et des exemples d'utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| LEFT(valeur, longueur) | Renvoie les premiers caractères d'une chaîne, à partir de la gauche, selon le nombre de caractères spécifié.
Exemple : si la longueur est 3, la formule renverra les 3 premiers caractères. Pour plus de détails, cliquez ici. |
| RIGHT(valeur, longueur) | Renvoie les derniers caractères d'une chaîne, à partir de la droite, selon le nombre de caractères spécifié.
Exemple : si la longueur est 3, la formule renverra les 3 derniers caractères. Pour plus de détails, cliquez ici. |
| MID(valeur, départ, [longueur]) | Extrait un nombre donné de caractères au milieu d'une chaîne. Le premier caractère de la chaîne référencée est à l’index 0. Exemple : si le champ A1 contient ABCD, la formule MID(A1,1,2) renverra BC. Pour plus de détails, cliquez ici. |
| FIND(texte_cherché, texte_source, [position_départ]) | Recherche une chaîne dans une autre, et renvoie la position de départ (index) de la première occurrence, à partir du premier caractère de la chaîne source. Pour plus de détails, cliquez ici. |
| LEN(valeur) | Renvoie le nombre de caractères dans une chaîne. Pour plus de détails, cliquez ici. |
| UPPER(valeur)/TOUPPERCASE(valeur) | Convertit toutes les lettres minuscules d'une chaîne en majuscules, sans modifier la chaîne d’origine. |
| LOWER(valeur)/TOLOWERCASE(valeur) | Convertit toutes les lettres majuscules d'une chaîne en minuscules, sans modifier la chaîne d’origine. |
| PROPER(valeur) | Met en majuscule la première lettre de chaque mot, et en minuscule toutes les autres lettres sauf si elles suivent un caractère autre qu'une lettre. |
| SUBSTITUTE(texte, ancien_texte, nouveau_texte, [occurrence]) | Remplace ancien_texte par nouveau_texte dans une chaîne. On peut cibler une occurrence spécifique. |
| TEXT() | Formate une valeur numérique ou une date selon un format défini. Pour plus de détails, cliquez ici. |
| REPT(valeur, nombre_répétitions) | Renvoie la valeur répétée un certain nombre de fois. Pour plus de détails, cliquez ici. |
| SPELLNUMBER(nombre, [langue]) | Convertit un nombre en toutes lettres, utile dans des documents formels. Exemple : "cent" au lieu de "100". Pour plus de détails, cliquez ici. |
| TRIM() | Supprime les espaces (pleine ou demi-chasse) au début et à la fin d’un champ. Si plusieurs espaces sont présents entre les mots, un seul sera conservé. Exemple : TRIM(" a c ") renverra "a c". |
| CHAR(valeur) | Renvoie un caractère correspondant à un code caractère valide. Exemple : CHAR(10) renvoie un saut de ligne, CHAR(32) renvoie un espace. |
| ISBLANK() | Vérifie si un champ est vide. Peut être utilisé seul ou dans une formule conditionnelle. Exemple : ISBLANK(A2) ou IF(ISBLANK(A2), 'O', 'N'). |
Formules permettant de renvoyer des valeurs selon des conditions spécifiques. Pour des explications détaillées et des exemples d'utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| IF(valeur==condition, valeur_si_vrai, valeur_si_faux) | Renvoie une valeur si la condition est VRAIE, ou une autre si elle est FAUSSE. Pour plus de détails, cliquez ici. |
| IFS(valeur=condition1, valeur_si_vrai1, valeur=condition2, valeur_si_vrai2, ..., vrai, valeur_par_défaut) | Vérifie si une ou plusieurs conditions sont remplies et renvoie une valeur correspondant à la première condition VRAIE. Pour plus de détails, cliquez ici. |
| LOOKUP(valeur, liste_recherche, [liste_résultats]) | Recherche une valeur dans une liste (colonne ou ligne) et renvoie la valeur correspondante dans une autre liste. Pour plus de détails, cliquez ici. |
| AND(condition1, [condition2], ...) | Renvoie TRUE si toutes les conditions sont vraies, FALSE si au moins une est fausse. Pour plus de détails, cliquez ici. |
| OR(logical1, [logical2], ...) | Renvoie TRUE si au moins une condition est vraie, FALSE si toutes sont fausses. Pour plus de détails, cliquez ici |
| NOT(condition) | Renvoie TRUE si la condition est fausse, et FALSE si elle est vraie. Pour plus de détails, cliquez ici |
| COUNTIF(plage_critères, critère) | Compte le nombre de valeurs dans une sous-table qui remplissent un critère donné. Pour plus de détails, cliquez ici |
| COUNTIFS(plage1, critère1, [plage2, critère2], ...) | Applique des critères à plusieurs plages de champs et compte le nombre de fois où toutes les conditions sont remplies. Pour plus de détails, cliquez ici |
| SUMIF(plage, critère, [plage_somme]) | Renvoie la somme des valeurs dans une plage correspondant à un critère donné. Pour plus de détails, cliquez ici. |
| SUMIFS(plage_somme, plage1, critère1, [plage2, critère2], ...) | Fait la somme des valeurs qui répondent à une ou plusieurs conditions. Pour plus de détails, cliquez ici. |
| UPDATEIF(condition, valeur_si_vrai) | Modifie la valeur d’un champ si au moins une condition est remplie. Pour plus de détails, cliquez ici. |
| MAXIFS(plage_max, plage1, critère1, [plage2, critère2], ...) | Renvoie la valeur maximale parmi les cellules répondant aux critères définis. |
| MINIFS(plage_min, plage1, critère1, [plage2, critère2], ...) | Renvoie la valeur minimale parmi les cellules répondant aux critères définis. |
Formules permettant d'obtenir des données liées aux champs de sous-table, telles que le renvoi d'une entrée spécifique d'une sous-table, le comptage de lignes non vides ou de valeurs uniques, etc...Pour des explications détaillées et des exemples d'utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| FIRST(valeur) | Renvoie le premier élément de la colonne de votre sous-table. Pour plus de détails, cliquez ici. |
| FIRSTA(valeur) | Renvoie le premier élément non vide de la colonne de votre sous-table. Pour plus de détails, cliquez ici. |
| LAST(valeur) | Renvoie le dernier élément de la colonne de votre sous-table. Pour plus de détails, cliquez ici. |
| LASTA(valeur) | Renvoie le dernier élément non vide de la colonne de votre sous-table. Pour plus de détails, cliquez ici. |
| SUBTABLEROW(valeur, nième_ligne) | Renvoie les données ciblées de la colonne dans votre sous-table. Cette formule ne peut être utilisée que dans des champs indépendants. Pour plus de détails, cliquez ici. |
| COUNTA(valeur) | Compte le nombre de lignes de la sous-table où le champ spécifié n’est pas vide. La formule effectuera le décompte si le champ spécifié n’est pas vide, même si d’autres champs de la ligne sont vides. Il n’est donc pas nécessaire que l’ensemble de la ligne soit rempli. Pour plus de détails, cliquez ici. |
| RUNNINGBALANCE(valeure, [allow_backend_formula_recalculation=false]) | Renvoie la somme des valeurs de cette ligne et de la ligne précédente dans la colonne de votre sous-table, utilisée pour calculer les soldes progressifs. "Allow_backend_formula_recalculation=true" signifie que le recalcul en arrière-plan est autorisé pour cette formule. Pour utiliser cette formule, les enregistrements doivent être créés dans le bon ordre. Pour plus de détails, cliquez ici. |
| LARGE(arg, nth, ["arg2"]) | Référence le champ d'une sous-table et trie les valeurs de "argument" par ordre décroissant. Renvoie la valeur de "argument2" dans la même ligne pour l’ordre spécifié. Les deux champs doivent être dans la même sous-table. Pour plus de détails, cliquez ici. |
| UNIQUE() | Liste les valeurs uniques du champ de sous-table référencé. Pour plus de détails, cliquez ici. |
| UNIQUE().length | Calcule le nombre de valeurs uniques dans le champ de sous-table référencé. Pour plus de détails, cliquez ici. |
| VLOOKUP() | Renvoie les valeurs de la sous-table qui répondent aux conditions spécifiées. Pour plus de détails, cliquez ici. |
Dans les champs à sélection multiple, comme Sélection multiple, Téléversement d’images multiples et Téléversement de fichiers multiples, vous pouvez appliquer des formules pour vérifier des éléments spécifiques, détecter ceux manquants ou compter les pièces jointes téléversées.Pour des explications détaillées et des exemples d'utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| INCLUDES_ALL(Champ à sélection multiple / image / pièce jointe, valeur1, valeur2,...) | Si toutes les valeurs listées (qui peuvent être de n’importe quel type de champ ou de valeur) sont présentes parmi les options, renvoie TRUE (vrai). |
| NOT_INCLUDES_ALL(Champ à sélection multiple / image / pièce jointe, valeur1, valeur2,...) | Si toutes les valeurs listées (qui peuvent être de n’importe quel type de champ ou de valeur) ne sont contenues dans aucune des options, renvoie TRUE (vrai), équivalent à l’inverse de INCLUDES_ANY. |
| INCLUDES_ANY(Champ à sélection multiple / image / pièce jointe, valeur1, valeur2,...) | Si aucune des valeurs listées (qui peuvent être de n’importe quel type de champ ou de valeur) n’est présente parmi les options, renvoie TRUE (vrai). |
| NOT_INCLUDES_ANY(Champ à sélection multiple / image / pièce jointe, valeur1, valeur2,...) | Si aucune des valeurs listées (qui peuvent être de n’importe quel type de champ ou de valeur) n’est contenue dans aucune des options, renvoie TRUE (vrai), équivalent à l’inverse de INCLUDES_ALL. |
| ITEMS_COUNT(Champ à sélection multiple / images multiples / pièce jointe) | Renvoie le nombre de valeurs dans un champ à sélection multiple. Par exemple, si trois options sont sélectionnées dans un champ à sélection multiple, renvoie 3, s’il y a deux fichiers dans un champ de pièces jointes, renvoie 2. |
Utilisées pour renvoyer des valeurs liées au processus d’approbation lorsqu’un flux d’approbation est configuré dans une feuille. Pour des explications détaillées et des exemples d'utilisation, veuillez consulter cet article.
| Formule | Description |
|---|---|
| APPROVAL.COUNT() | Renvoie le nombre d’étapes d’approbation. |
| APPROVAL.STATUS() | Renvoie le statut de l’approbation. |
| APPROVAL.SUBMITTER() | Renvoie l’adresse e-mail de l’utilisateur qui lance le processus d’approbation. Pris en charge dans les champs de sélection d’utilisateur. |
| APPROVAL.SUBMITTERNAME() | Renvoie le nom de l’utilisateur qui lance le processus d’approbation. |
| APPROVAL.SUBMITDATE([true]) | Renvoie la date et l’heure de lancement d’un processus d’approbation. Pris en charge dans les champs de date. Pour plus de détails, cliquez ici. |
| APPROVAL.FINISHDATE([true]) | Renvoie la date et l’heure de fin d’un processus d’approbation. Une approbation se termine lorsque tous les approbateurs ont approuvé ou lorsqu’un d’entre eux rejette. Pris en charge dans les champs de date. Pour plus de détails, cliquez ici. |
| APPROVAL.CURRENTSTEPINDEX | Renvoie la valeur d’index représentant l’étape en cours dans le processus d’approbation. Index 0 signifie que le processus d’approbation n’a pas encore commencé. Index 1 signifie que le processus d’approbation a commencé, mais qu’aucun approbateur n’a encore approuvé. Chaque fois qu’un approbateur approuve, “1” est ajouté à l’index. Lorsque le processus se termine (tous approuvent / 1 rejette / annulé), l’index revient à “0”. |
| APPROVAL.STEP([stepIndex]).NAME() | Renvoie le nom de cette étape. |
| APPROVAL.STEP([stepIndex]).STATUS() | Renvoie le statut de cette étape. |
| APPROVAL.STEP([stepIndex]).USERS() | Renvoie tous les approbateurs. Ex. : Jessica Jones|Nick Fury|Steve Rogers Pris en charge dans les champs de sélection multiple d’utilisateurs. (Comme les formules ne peuvent actuellement pas être appliquées aux champs de sélection multiple, veuillez d’abord définir la formule, puis sélectionner les paramètres de sélection multiple.) |
| APPROVAL.STEP([stepIndex]).UNSIGNEDUSERS() | Renvoie les approbateurs qui n’ont pas encore approuvé cette étape. Ex. : Jessica Jones|Nick Fury|Steve Rogers Pris en charge dans les champs de sélection multiple d’utilisateurs. (Comme les formules ne peuvent actuellement pas être appliquées aux champs de sélection multiple, veuillez d’abord définir la formule, puis sélectionner les paramètres de sélection multiple.) |
| APPROVAL.STEP([stepIndex]).SIGNEDUSERS() | Renvoie les approbateurs ayant déjà approuvé cette étape. Ex. : Jessica Jones|Nick Fury|Steve Rogers Pris en charge dans les champs de sélection multiple d’utilisateurs. (Comme les formules ne peuvent actuellement pas être appliquées aux champs de sélection multiple, veuillez d’abord définir la formule, puis sélectionner les paramètres de sélection multiple.) |
| APPROVAL.STEP([stepIndex]).ISMULTI() | Renvoie "True" si cette étape comporte "plusieurs approbateurs". |
| APPROVAL.STEP([stepIndex]).THRESHOLD() | Renvoie le nombre seuil de cette étape, ou "-1" si cette étape n’a qu’un seul approbateur ou si aucun seuil n’a été défini. |
| APPROVAL.STEP([stepIndex]).SIGNEDCOUNT() | Renvoie le nombre d’approbateurs ayant déjà approuvé cette étape |
| APPROVAL.STEP([stepIndex]).RESP([email]) | Renvoie la réponse de cette étape. Pour plus de détails, cliquez ici. |
| APPROVAL.STEP([stepIndex]).COMMENT([email]) | Renvoie les commentaires de l’approbateur (ou des approbateurs), ou null s’il n’y a pas de commentaire. Pour plus de détails, cliquez ici. |
| APPROVAL.STEP([stepIndex]).SIG([email]) | Renvoie la signature de l’approbateur dans cette étape. Ex. : URL d’image en base64. Pris en charge dans les champs de téléversement d’images. Pour plus de détails, cliquez ici. |
| APPROVAL.STEP([stepIndex]).SIGIMG([email], [width], [height]) | Renvoie la signature de l’approbateur dans cette étape avec une taille d’image prédéfinie. Les arguments [width] et [height] sont facultatifs, avec des valeurs par défaut de 300px x 150px. Cette formule peut être appliquée à des descriptions de champ avec le BBCode [formula]. Pour plus de détails, cliquez ici. |
| APPROVAL.STEP([stepIndex]).ACTIONDATE([email],[true]) | Renvoie la date et l’heure d’approbation ou de rejet d’une étape spécifique. Cette formule doit être appliquée à un champ de date. Pour plus de détails, cliquez ici. |
| APPROVAL.STEP([stepIndex]).COMMENTDATE([email], [true]) | Renvoie la date et l’heure des commentaires laissés par l’approbateur(s), ou null s’il n’y a pas eu d’approbation, de rejet ou de commentaire. Cette formule peut être appliquée à un champ de date. Pour plus de détails, veuillez vous référer à cette section. |
Les calculs de formules sont exécutés lorsque vous modifiez des champs référencés, et les valeurs sont enregistrées lorsque vous enregistrez l’entrée.
Par défaut, les valeurs déjà enregistrées ne seront pas modifiées lorsque vous modifiez la formule lors de la conception de votre feuille. En effet, dans la plupart des cas, un calcul antérieur reste valable pour les anciennes entrées et ne doit pas être écrasé lorsque vous mettez à jour la formule. Un exemple concret est le calcul des taxes après une augmentation du taux : toutes les entrées précédentes doivent continuer à refléter l’ancien taux d’imposition.
Dans certains cas, vous pouvez toutefois avoir besoin de recalculer une formule sur toutes les entrées existantes. Pour ce faire, vous pouvez choisir d’appliquer la modification de la formule à tous les enregistrements enregistrés ou, si vous avez modifié plusieurs formules, d’appliquer toutes les formules de cette feuille à tous les enregistrements enregistrés.
N’oubliez pas desauvegarder d’abord la conception avant de recalculer les formules en mode Design.

Outre l’application manuelle du recalcul des formules, vous pouvez également effectuer un recalcul via un workflow. De plus, si vous modifiez fréquemment des formules ou utilisez TODAY(), vous pouvez envisager d’utiliser un workflow quotidien afin de recalculer les formules chaque jour.
Remarque : Lors d’un recalcul des formules via un workflow, il existe deux situations dans lesquelles les modifications ne seront pas enregistrées dans l’historique des entrées.
1. Aucun changement n’est apporté après le recalcul.
2. Afin d’optimiser les performances du système, les recalculs portant sur plus de 500 entrées ne seront pas consignés dans l’historique (bien que le recalcul s’exécute normalement).
Pour effectuer un recalcul de formule sur des enregistrements liés dans d'autres feuilles, veuillez cliquer sur Formulaires> Formulaires > Recalculer toutes les formules sur les feuilles parentes ou associées.


Feuilles parentes :
Dans l'exemple ci-dessus, A et B sont les feuilles parentes de C.
Feuilles associées :
B et C sont des feuilles associées à A ; A et C sont des feuilles associées à B.
Remarque : Les paramètres pour recalculer toutes les formules sur les feuilles liées seront ignorés si le nombre d'enregistrements à recalculer dépasse la limite du système. Actuellement, la limite du nombre d'enregistrements pouvant être recalculés est de 1000.
Le diagramme ci-dessous illustre les principes définissant et la logique liant les feuilles parentes, les feuilles enfants et les feuilles associées.

Les formules fonctionnent également dans les champs de description, ce uniquement à des fins d'affichage.
Cela est utile lorsque vous avez besoin de recalculer une formule à chaque chargement de votre formulaire, mais que vous n'avez pas besoin de conserver cette valeur dans votre base de données. Vous devez utiliser le BBCode [formula] pour que votre formule fonctionne.
Par exemple, supposons que vous souhaitez afficher l'âge d'une personne en fonction de sa date de naissance. La formule [formula](TODAY() - A1)/365.25[/formula] écrite dans un champ de description afficherait l'âge de cette personne et serait recalculée en fonction du jour actuel.

Pour une présentation des objets mathématiques pris en charge par Ragic, veuillez consulter cette page.
Si vous avez besoin d'utiliser une formule qui n'est actuellement pas prise en charge, veuillez contacter l'assistance Ragic pour nous la suggérer.