Suivez votre progression
Accueil Trailhead
Accueil Trailhead

Utilisation de nombres, de devises et de pourcentages dans les formules

Objectifs de formation

Une fois cette unité terminée, vous pourrez :
  • Décrire ce que sont les types de renvoi de formule Nombre, Devise et Pourcentage
  • Expliquer la différence entre les types Nombre, Devise et Pourcentage
  • Présenter des cas d’utilisation de formules des types Nombre, Devise et Pourcentage
  • Créer une formule qui emploie les types Nombre, Devise et Pourcentage

Présentation des nombres, devises et pourcentages dans les formules

Lorsque la plupart des gens entendent le mot formule, ils s’imaginent que des nombres sont impliqués. Bien que ce ne soit pas toujours le cas avec les formules dans Salesforce, quelques types de données dépendent effectivement de nombres. Le plus simple d’entre eux est le type Nombre. Lorsque vous créez un champ de formule qui renvoie une valeur de type Nombre, vous pouvez spécifier combien de décimales contient votre nombre, à savoir entre 0 et 18.

Les données de type Nombre peuvent être positives ou négatives, ainsi qu’entières ou décimales. Elles sont bien adaptées au stockage de mesures, telles que des températures, des longueurs et des tailles de populations. Les devises, cependant, disposent de leur propre type de données. Une formule qui renvoie des données de devise est semblable à une formule de nombre, exception faite que les valeurs de devise sont accompagnées d’un symbole de devise.

Remarque

Remarque

Les champs de formule personnalisés pouvant contenir des devises ne sont associés à aucune devise en particulier. Si le système multidevise est activé dans votre organisation, le résultat d’une formule de devise s’affiche dans la devise de l’enregistrement lui étant associée.

Les pourcentages constituent également un type de données : il s’agit de nombres auxquels un signe de pourcentage est accolé. Une donnée de type Pourcentage est stockée sous la forme d’un nombre divisé par 100, ce qui signifie par exemple que 100 % est représenté par la valeur 1 et 90 % par 0,9.

Vous pouvez combiner et associer ces trois types de données numériques dans des formules, mais gardez leurs différences à l’esprit. De plus, n’oubliez pas : quel que soit le type utilisé, la valeur renvoyée par la formule ne doit pas comporter plus de 18 chiffres, qu’ils soient placés avant ou après la virgule.
Type de renvoi de la formule Caractéristiques
Numéro Un nombre positif ou négatif, pouvant être entier ou décimal.
Devise Un nombre auquel est accolé le symbole d’une devise.
Pourcentage Un nombre stocké sous une forme dans laquelle il est divisé par 100, auquel est accolé un symbole de pourcentage.

Fonctions et opérateurs courants relatifs aux nombres, devises et pourcentages

Certains opérateurs et fonctions sont couramment employés pour manipuler des nombres.

Opérateurs mathématiques

Les opérateurs les plus utilisés dans les formules qui renvoient un nombre, une devise ou un pourcentage sont les signes mathématiques que vous avez appris à utiliser à l’école primaire.

Vous pouvez donc additionner (+), soustraire (-), multiplier (*) ou diviser (/) des valeurs numériques. Vous pouvez également utiliser des exponentielles (^) dans vos formules. Ces opérateurs fonctionnent exactement comme sur une calculatrice. Les formules suivent l’ordre standard des opérations et vous pouvez les regrouper entre parenthèses.

Vous pouvez également utiliser les signes Supérieur à ( >), Inférieur à ( <), Inférieur ou égal ( <=) ou Supérieur ou égal ( >=) pour comparer deux valeurs numériques. Pour vérifier si deux nombres sont égaux, utilisez =. Pour vérifier que deux nombres ne sont pas égaux, utilisez l’opérateur « différent de », qui peut être écrit sous la forme != ou <>.

Fonctions mathématiques

L’éditeur de formule propose également d’autres fonctions mathématiques. La fonction ROUND() arrondit une valeur numérique que vous lui soumettez. Elle fonctionne selon la règle de l’arrondi supérieur pour les demis, ce qui signifie que ces derniers sont toujours arrondis vers le haut. Par exemple, 1,45 est arrondi à 1,5 et 1,43 est arrondi à 1,4.

Cette formule de type Devise utilise ROUND() pour calculer une remise et l’arrondir en une valeur à deux décimales, respectant ainsi le format des montants de type Devise.

ROUND(Price__c - Price__c * Discount__c, 2)

Vous pouvez également utiliser les opérateurs intégrés pour employer plusieurs autres fonctions mathématiques, telles que les fonctions valeur absolue, plafond ou plancher. Pour en savoir plus sur les fonctions mathématiques, consultez l’article Opérateurs et fonctions de formule dans l’aide en ligne Salesforce.

Utilisation de nombres, de devises et de pourcentages dans les formules

Il est possible d’utiliser les types Nombre, Devise et Pourcentage dans les formules à des fins très variées. Vous pouvez ainsi calculer un pourcentage de commission sur une vente, ou encore obtenir le montant du chiffre d’affaires ou des bénéfices réalisés sur une année.

Création d’un champ personnalisé intitulé Capital

  1. Dans Configuration, accédez à Gestionnaire d’objet via la case Recherche rapide.
  2. Cliquez sur Compte | Champs et relations, puis sur Nouveau.
  3. Sélectionnez Devise, puis cliquez sur Suivant.
  4. Dans Étiquette du champ, saisissez Capital. La section Nom du champ est automatiquement renseignée.
  5. Dans Décimales, saisissez 2. Comme il s’agit d’un montant en devise, deux chiffres doivent figurer après la virgule.
  6. Modifiez le paramètre Longueur pour qu’il soit égal à 16. Laissez les autres options sur les valeurs par défaut, puis cliquez sur Suivant.
  7. Cliquez encore une fois sur Suivant, puis sur Enregistrer.
Nous utiliserons le champ Capital pour calculer de manière conditionnelle un taux d’intérêt qui nous servira ensuite à déterminer le montant des intérêts composés du compte.

Calcul du taux d’intérêt

Supposons que, si le montant du capital de ce compte est inférieur à 10 000 $, le taux d’intérêt est de 2 % par an, soit 0,02. Si le solde se situe entre 10 000 et 100 000 dollars, le taux d’intérêt est de 3 %, soit 0,03. Si le solde est supérieur à 100 000 $, le taux d’intérêt est de 4 %, soit 0,04.

Nous utilisons IF() pour déterminer le taux d’intérêt adéquat en fonction de la valeur de Capital.

  1. Dans l’outil Gestionnaire d’objet, cliquez sur Compte | Champs et relations, puis sur Nouveau.
  2. Sélectionnez Formule, puis cliquez sur Suivant.
  3. Dans Étiquette du champ, saisissez Taux d’intérêt. La section Nom du champ est automatiquement renseignée.
  4. Sélectionnez Pourcentage et laissez la valeur par défaut pour le nombre de décimales, 2.
  5. Cliquez sur Suivant.
  6. Saisissez la formule suivante :
    IF(Principal__c < 10000, 0.02,
      IF(Principal__c >= 10000 &&
        Principal__c < 100000, 0.03, 0.04))
    Remarque Notre instruction if présente une lacune : même si les montants en devise peuvent être négatifs, nous supposons ici que la valeur de Principal__c est positive. Si ce n’est pas le cas, il y a du souci à se faire au sujet de ce compte !

Nous disposons maintenant du montant du capital et d’un taux d’intérêt, qui sont les éléments nécessaires au calcul des intérêts accumulés sur ce compte.

Calcul des intérêts accumulés sur un compte

Nous allons créer une formule qui calcule la valeur des intérêts accumulés sur un compte en utilisant Capital et le nombre d’années pendant lesquelles le compte a été ouvert. Heureusement, il existe déjà une formule mathématique permettant de calculer le montant des intérêts qu’a généré un compte sur une période donnée : A = Pe^(rt), qui utilise les variables suivantes.

Variable Valeur
P Le montant du capital sur le compte
e La constante mathématique égale à 2,71828182845904
r Le taux d’intérêt annuel du compte
t Le nombre d’années pendant lesquelles le compte a été ouvert

Nous pouvons à présent adapter la formule pour qu’elle corresponde à nos champs.

  1. Dans l’outil Gestionnaire d’objet, cliquez sur Compte | Champs et relations, puis sur Nouveau.
  2. Sélectionnez Formule, puis cliquez sur Suivant.
  3. Dans Étiquette du champ, saisissez Intérêts accumulés. La section Nom du champ est automatiquement renseignée.
  4. Insérez le champ Capital dans l’éditeur de formule. Nous voulons multiplier la valeur de Capital par e élevé à la puissance du taux d’intérêt, lui-même multiplié par le nombre d’années d’ouverture du compte. Nous pouvons le faire à l’aide de la fonction EXP().
  5. Insérez l’opérateur * Multiplier.
  6. Sélectionnez l’onglet Formule avancée et insérez la fonction EXP. EXP(nombre) renvoie e élevé à la puissance d’un nombre donné.
  7. À la place du nombre, créez la formule du taux d’intérêt : insérez d’abord le champ que nous avons créé précédemment, Interest_Rate__c, entre les parenthèses.
  8. Sélectionnez l’onglet Formule simple et insérez l’opérateur * Multiplier après le champ Interest_Rate__c.
  9. Sélectionnez l’onglet Formule avancée et insérez la fonction YEAR après l’opérateur * Multiplier.
  10. À la place de la date dans la fonction YEAR, insérez la fonction TODAY.
  11. Sélectionnez l’onglet Formule simple et insérez l’opérateur - Soustraire après la deuxième parenthèse fermante à la fin de la formule (la parenthèse fermante de la fonction YEAR).
  12. Sélectionnez l’onglet Formule avancée et insérez la fonction VALUE après l’opérateur - Soustraire.
  13. À la place du nombre dans la fonction VALUE, insérez le champ YearStarted.
Ces éléments nous permettent de composer notre fonction finale :
Principal__c * EXP(Interest_Rate__c * (YEAR(TODAY()) - VALUE(YearStarted)))

Une fois la fonction saisie dans l’éditeur de formule, vous pouvez cliquer sur Suivant. Sur la page Sécurité du champ, cliquez sur Suivant, puis sur Enregistrer pour finaliser votre formule.

Félicitations, vous venez d’écrire une formule permettant de calculer la valeur des intérêts composés qui se sont accumulés sur un compte depuis son ouverture ! Vous pouvez l’observer dans n’importe quelle page de compte.

Exemples de formule numérique

  1. Cette formule calcule la marge bénéficiaire brute en fonction du pourcentage de marge, du nombre d’articles vendus et du prix par article.
    Margin_percent__c * Items_Sold__c * Price_Item__c
  2. Cette formule de devise calcule une commission, en tenant compte du fait que la commission maximale est de 500 $. Étant donné qu’il existe un champ de pourcentage personnalisé Commission et un champ de devise personnalisé intitulé Sale (Vente), cette formule renvoie le montant le plus bas entre 500 $ et le pourcentage de commission multiplié par le montant de la vente.
    MIN(500, Sale__c * Commission__c)
  3. Les formules numériques sont pratiques pour effectuer des conversions entre des unités de base. Cette formule convertit en degrés Fahrenheit des températures exprimées en degrés Celsius.
    1.8 * Degrees_Celsius__c + 32
    Et celle-ci convertit des milles en kilomètres.
    Miles__c / 0.6213711921

Erreurs courantes avec les formules numériques

  • Division par zéro Lorsque vous écrivez des formules numériques, les règles mathématiques habituelles s’appliquent. Si votre formule comporte une division par zéro, cela engendrera une erreur. Lorsque vous divisez un nombre par un autre, assurez-vous que le dénominateur n’est jamais nul. Il est particulièrement important d’être vigilant par rapport à la division par zéro lorsque vous divisez par un champ dont la valeur est variable. Si vous souhaitez tout de même réaliser une division par un nombre susceptible d’être égal à zéro, utilisez une instruction IF() pour garantir qu’aucune erreur ne se produira. Par exemple, cette formule calcule le chiffre d’affaires par employé au sein d’un compte en divisant la valeur de Chiffre d’affaires annuel par celle de Nombre d’employés. S’il n’y a aucun employé, la formule renvoie le résultat 0 au lieu de rencontrer une erreur.
    IF(NumberOfEmployees <> 0, AnnualRevenue / NumberOfEmployees, 0)
  • Vérification des champs ayant pour valeur null Il peut être tentant de vérifier si un champ est vide en utilisant les opérateurs = (égal) ou != (différent de) afin de voir s’il a pour valeur null. Toutefois, il est préférable d’utiliser la fonction intégrée ISBLANK(). ISBLANK() peut accepter n’importe quel champ en tant qu’argument et renvoie « true » si celui-ci est vide, ou « false » dans le cas contraire. Lorsque vous créez une formule, vous pouvez choisir de traiter les champs vides comme tels ou comme des zéros. Par défaut, Traiter les champs vides comme des zéros est sélectionné. Vous pouvez uniquement utiliser ISBLANK() pour vérifier si un champ est vide dans le cas où vous avez sélectionné Traiter les champs vides comme tels.