Il existe diverses méthodes pour élaborer des calculs complexes et les intégrer dans un document PDF de manière claire et professionnelle. Découvrez comment implémenter des formules conditionnelles dans votre prochain document.
Intégration de Formules Conditionnelles dans Acrobat
Nous avons précédemment exploré les fondements des calculs automatisés avec Adobe Acrobat. Les formules conditionnelles permettent d’aller au-delà de ces bases, ouvrant la voie à la création de calculs plus sophistiqués directement dans un PDF.
Si vous avez l’habitude d’utiliser des formules dans Excel ou Google Sheets, le concept de formules conditionnelles vous est familier. Également appelées formules logiques, elles affichent une valeur spécifique ou activent un calcul lorsqu’une condition particulière est rencontrée. Par exemple, cela pourrait être le cas si un nombre est négatif, ou si un résultat dépasse un seuil défini. Les formules conditionnelles les plus utilisées dans Excel incluent la fonction « SI », ainsi que « SOMME.SI » et « NB.SI ». Il existe également le formatage conditionnel, où l’apparence d’une cellule est modifiée lorsqu’une condition spécifique est remplie.
Grâce aux champs calculés, ces types de formules peuvent également être intégrés dans les documents Adobe PDF. Vous pouvez afficher un nombre, du texte, ou réaliser un calcul en fonction des informations issues d’un autre champ. Ces formules peuvent également être utilisées en combinaison avec d’autres champs calculés. Les formules conditionnelles sont utiles pour de multiples types de formulaires PDF, comme :
- Documents financiers: Par exemple, si le montant principal détermine le taux d’intérêt d’une personne, une formule conditionnelle peut être utilisée pour afficher le prix correspondant basé sur le montant saisi.
- Tests et examens: Vous pouvez créer une évaluation qui affiche automatiquement « réussite » ou « échec » en fonction du score global du participant.
- Ventes: Pour les transactions, vous pouvez créer un outil qui recommande des produits basés sur les réponses d’un acheteur potentiel à des questions spécifiques.
Il est important de noter que si les champs calculés ne peuvent être créés que dans Adobe Acrobat, les calculs effectués seront visibles dans n’importe quel lecteur PDF.
Conception d’Instructions Conditionnelles Simples
Les champs calculés personnalisés d’Adobe Acrobat utilisent le langage JavaScript. Il n’est cependant pas nécessaire de maîtriser ce langage pour créer un champ conditionnel simple; il suffit de suivre un modèle de base.
Dans l’exemple qui suit, nous utiliserons un formulaire de commande d’entreprise simple, qui comporte sept champs: un champ pour la quantité de chacun des cinq produits, un pour la quantité totale, et un pour le prix total.
Une instruction conditionnelle en JavaScript dans Adobe suit cette structure de base :
var nomVariable = this.getField("nomDuChamp").value;
if (conditionNomVariable) event.value = résultatVrai;
else event.value = résultatFaux;
La première ligne définit la valeur qui sera utilisée dans votre formule conditionnelle. Ici, nous utilisons this.getField
pour récupérer la valeur d’un autre champ du document. La deuxième ligne établit la condition. De manière similaire à Excel, cette condition peut être une comparaison (supérieur, inférieur, égal) par rapport à une valeur spécifique.
Finalement, nous définissons les résultats. Le « résultat vrai » est la valeur qui s’affichera si la condition est respectée. Sur la ligne suivante, « else » nous permet de définir le « résultat faux », qui sera affiché si la condition n’est pas respectée.
Pour une application concrète, nous avons créé un champ calculé intitulé « Commande groupée ». Pour saisir un script calculé personnalisé, faites un clic droit sur le champ souhaité dans Acrobat, puis sélectionnez « Propriétés ». Dans ce menu, naviguez vers « Calculer > Script de calcul personnalisé > Modifier ».
Ce champ indiquera si une commande est considérée comme « groupée » ou non. La case affichera « Oui » si la quantité totale est supérieure à 20 articles, et « Non » si elle est inférieure. En se basant sur ces conditions, voici la formule :
var TQ = this.getField("Quantité totale").value;
if (TQ > 20) event.value = "Oui";
else event.value = "Non";
Dans l’image ci-dessus, on peut observer que la variable « TQ » a été définie, en récupérant sa valeur à partir du champ « Quantité totale ». Il est important de noter que ces champs sont sensibles à la casse. La condition est que « TQ » doit être supérieur à 20. Si cette condition est vérifiée, le champ affichera « Oui », sinon, il affichera « Non ».
Si une commande porte sur un total de 11 câbles Lightning et 10 batteries, soit un total de 21 articles, elle sera classée comme une commande groupée et affichera le résultat suivant :
Gestion de Conditions Multiples
Dans certains cas, il peut être nécessaire d’imposer plusieurs conditions pour qu’un calcul soit réalisé. Heureusement, il est tout à fait possible de créer un champ conditionnel qui prend en compte plusieurs critères.
Prenons l’exemple d’une boutique où toutes les commandes atteignant au moins 20 articles et dont le prix total est de 150€ bénéficient d’une remise de 10%. Le montant final, prenant en compte la remise, apparaîtra dans un champ nommé « Total avec remise ». Dans ce cas, il faut définir deux variables et deux conditions. Le champ aura la forme suivante :
var Price = this.getField("Prix initial").value;
var TQ = this.getField("Quantité totale").value;
if (Prix > 150 && TQ > 20) event.value = Prix * 0.9;
else event.value = Prix;
Comme vous pouvez le constater, nous avons défini deux variables sur deux lignes distinctes. Nous utilisons l’opérateur « && » pour combiner les deux conditions. Il est important de noter que la valeur finale est elle aussi le résultat d’un calcul, appliquant la remise.
Ainsi, si nous utilisons les mêmes données que dans l’exemple précédent, le résultat affiché sera le suivant :
Ordre de Calcul
L’ordre dans lequel les calculs sont effectués est un élément important à considérer. Contrairement à Excel, qui effectue les calculs de manière simultanée, Acrobat dépend de l’utilisateur pour établir la séquence des formules.
Pour ajuster l’ordre de calcul, allez dans la barre latérale « Modifier le formulaire », puis « Plus > Définir l’ordre de calcul des champs ». Dans l’exemple ci-dessus, étant donné que les formules pour la commande groupée et le total avec remise dépendent toutes deux de la quantité totale et du prix total, il est nécessaire de s’assurer que ces deux champs sont calculés en premier.
Il est essentiel de vérifier l’ordre de calcul avant de publier votre formulaire. Effectuer des tests en insérant différentes valeurs est une bonne méthode pour s’assurer que tout fonctionne correctement.