Ajouter, soustraire, multiplier et diviser des valeurs dans un contrôle

S’applique à
InfoPath 2010 InfoPath 2013

Vous pouvez aider vos utilisateurs à remplir des formulaires basés sur votre modèle de formulaire en utilisant des formules pour calculer la valeur d’un contrôle, en fonction des données que l’utilisateur entre dans d’autres contrôles. Les calculs peuvent inclure l’ajout, la soustraction, la multiplication et la division de valeurs. Par exemple, si vous concevez un modèle de formulaire que les entrepreneurs en électricité utiliseront pour demander des permis, vous pouvez ajouter une formule à un contrôle qui calcule automatiquement le prix total que l’entrepreneur doit payer pour la demande en multipliant le nombre de permis dans la demande par le prix de chaque permis.

Dans cet article

Qu’est-ce qu’une formule ?

Une formule est une expression XPath composée de valeurs, de champs ou de groupes, de fonctions et d’opérateurs utilisés pour calculer et afficher d’autres valeurs. Les formules peuvent être utilisées pour effectuer les tâches suivantes :

  • Calculez les valeurs mathématiques à partir des valeurs que vous spécifiez lors de la conception du modèle de formulaire ou des valeurs que les utilisateurs entrent dans les contrôles lorsqu’ils remplissent des formulaires basés sur votre modèle de formulaire.
  • Afficher des dates et des heures spécifiques.
  • Afficher les valeurs que les utilisateurs entrent dans un contrôle dans un autre contrôle.
  • Définissez la valeur par défaut d’un champ ou d’un contrôle.
  • Exécutez une règle basée sur une valeur calculée à l’aide d’une formule.

Chaque expression XPath utilisée dans une formule est une combinaison de valeurs, de fonctions et d’opérateurs qui prend la valeur d’une valeur unique. Une formule peut contenir plusieurs expressions. Vous pouvez considérer une formule comme une phrase composée d’une ou de plusieurs expressions, chaque expression représentant une expression dans la formule.

L’illustration suivante montre la relation entre une formule et une expression.

046c2cb3-2a43-40c6-af65-5f7ee9c0e1a4

Une fonction est une expression qui retourne une valeur basée sur les résultats d’un calcul. Les valeurs utilisées dans les fonctions sont appelées arguments. Vous pouvez utiliser les fonctions XPath 1.0 standard incluses dans InfoPath, ainsi que certaines fonctions spécifiques à InfoPath. Vous trouverez des liens vers plus d’informations sur les fonctions InfoPath dans la section Voir aussi .

Haut de la page

Utilisation de deux opérateurs ou plus dans une formule

Lorsqu’une formule contient au moins deux opérateurs mathématiques, InfoPath effectue le calcul en fonction de la priorité de l’opérateur. La liste suivante indique l’ordre dans lequel les opérations sont effectuées :

  1. Calculs entre parenthèses
  2. Calculs de multiplication et de division
  3. Calculs d’addition et de soustraction

Si la formule contient deux opérateurs qui ont la même priorité, les calculs sont effectués de gauche à droite.

Par exemple, imaginez que vous créez un modèle de formulaire de demande de permis avec une zone de texte qui affiche le coût total de tous les permis soumis dans une demande. Les valeurs requises par cette formule proviennent d’autres zones de texte du formulaire. La zone de texte qui affiche le coût total contient la formule suivante :

txtPermit1Qty * txtPermitCost1 + txtPermit2Qty * txtPermitCost2 /txtNumberOfPermits

Cette formule inclut les opérateurs d’addition (+), de multiplication (*) et de division (/). En fonction de la priorité des opérateurs, les calculs de multiplication et de division sont effectués avant le calcul d’addition. Étant donné que les opérateurs de multiplication et de division ont la même priorité, le calcul de multiplication est effectué avant l’opérateur de division, car l’opérateur de multiplication est situé à gauche de l’opérateur de division. La formule est calculée de la façon suivante :

  1. La valeur dans txtPermit1Qty est multipliée par la valeur dans txtPermitCost1.
  2. La valeur dans txtPermit2Qty est multipliée par la valeur dans txtPermitCost2, et ce résultat est ensuite divisé par la valeur dans txtNumberOfPermits.
  3. Le résultat du calcul à l’étape 1 est ajouté aux résultats du calcul à l’étape 2.

Pour contrôler l’ordre de calcul, placez le calcul que vous souhaitez effectuer en premier entre parenthèses. Les calculs entre parenthèses sont effectués avant les calculs en dehors des parenthèses. Placez les calculs entre parenthèses à gauche des calculs sans parenthèses. Les calculs entre parenthèses imbriquées sont effectués à partir des parenthèses internes vers les parenthèses externes.

Par exemple, considérez la formule suivante :

((txtPermit1Qty * txtPermitCost1) + (txtPermit2Qty * txtPermitCost2))/txtNumberOfPermits

Dans ce calcul, la valeur résultant de la multiplication des valeurs dans txtPermit1Qty et txtPermitCost1 est ajoutée à la valeur résultant de la multiplication des valeurs dans txtPermit2Qty et txtPermitCost2. La somme de ce calcul est ensuite divisée par la valeur dans txtNumberOfPermits.

Haut de la page

Insérer une formule mathématique dans un contrôle

  1. Double-cliquez sur le contrôle ou le champ pour lequel vous souhaitez créer la formule.

  2. Cliquez sur l’onglet Données.

  3. Cliquez sur Insérer la formule6aeee2be-ff9c-4a64-a987-2db942c81046 .

  4. Pour insérer une valeur ou un opérateur mathématique dans la formule, tapez la valeur ou le symbole de l’opération mathématique dans la zone Formule .
    Liste des opérations mathématiques

    Opération Symbole
    Ajouter +
    Soustraire -
    Multiplier *
    Diviser /

    Remarque

    Si votre formule utilise l’opérateur de division (/), assurez-vous qu’il existe un espace avant et après l’opérateur de division. Si l’opérateur de division n’a pas d’espace avant et après celui-ci, InfoPath peut interpréter « / » comme un séparateur pour les étapes d’emplacement XPath plutôt que comme un opérateur de division.

    Conseil

    Les formules mathématiques dépendent généralement de valeurs entières ou décimales comme arguments. Pour éviter les valeurs vides dans votre formule, sélectionnez la zone Traiter les valeurs vides comme zéro case activée dans la catégorie Avancé de la boîte de dialogue Options de formulaire.

  5. Pour case activée la formule de la syntaxe correcte, dans la boîte de dialogue Insérer une formule, cliquez sur Vérifier la formule.
    Ma formule contient des erreurs
    Cliquez sur Afficher les détails dans la boîte de dialogue Microsoft Office InfoPath pour afficher les erreurs dans la formule. Voici quelques suggestions pour résoudre ces erreurs :

    • Si vous utilisez une fonction dans votre formule, vérifiez que vous utilisez les arguments corrects pour la fonction. Certaines fonctions nécessitent des champs ou des groupes, tandis que d’autres fonctions nécessitent des valeurs spécifiées en tant qu’arguments. Vous trouverez des liens vers des informations supplémentaires sur les fonctions dans la section Voir aussi .
    • Supprimez et retapez votre formule pour vous assurer qu’elle est correctement tapée.
  6. Pour tester vos modifications, cliquez sur Aperçu dans la barre d’outils Standard, ou appuyez sur Ctrl+Maj+B.

Haut de la page