AppSheet offre une flexibilité exceptionnelle pour créer des applications personnalisées sans nécessiter de compétences en programmation. L'une des fonctionnalités les plus puissantes d'AppSheet est l'utilisation des conditions IF, qui permettent de définir des règles logiques pour contrôler le comportement de votre application. Dans cet article, nous explorerons les différentes façons d'utiliser les conditions IF dans AppSheet pour créer des applications plus intelligentes et plus dynamiques.
Sommaire
ToggleLes différentes façons d'écrire des tests logiques dans AppSheet
Avant d’entrer dans les détails, examinons brièvement ce que sont les conditions IF. En programmation, une instruction conditionnelle IF permet d’exécuter un bloc de code si une condition spécifique est vraie, sinon, un autre bloc de code est exécuté. Vous pouvez écrire une condition IF ou SI dans un tableau Google Sheets. Vous pouvez également le faire dans Google AppSheet. Dans ce dernier, les conditions IF sont utilisées pour déterminer le comportement des éléments de votre application en fonction de certaines conditions remplies ou non.
Un test unique "Vrai ou faux" avec IF()
Il s’agit de la formulation standard qui comprend:
- une expression à tester pour savoir si c’est VRAI ou FAUX
- la valeur à renvoyer si la condition est vraie
- la valeur à renvoyer si la condition est fausse
IF(expression logique, valeur-si-vrai, valeur-si-faux)
Par exemple, IF((1 > 0), "Oui!", "Non!") retourne Oui!car 1 est bien supérieur à 0.
Plusieurs tests "Vrai ou faux" avec IFS()
A l’aide d’une seule expression, AppSheet vous offre la possibilité de tester différents cas et définir les valeurs à renvoyer selon que la condition renvoit la valeur « Vrai » ou « Faux ».
IFS(condition1, valeur1, [condition2, valeur2 ...])
Dans l’exemple qui suit, on utilise l’expression IFS pour connaître le nom du jour, en la combinant avec WEEKDAY() qui renvoit un nombre et TODAY() qui indique qu’il s’agit de la date du jour.
Test de différents cas possibles avec SWITCH()
Comme pour IFS, l’expression SWITCH() permet de tester différents cas dans une seule et même formule.
Toutefois, elle diffère légèrement dans la manière d’écrire le test puisque’on écrit d’abord la valeur ou l’expression à tester puis on met des couples de cas à tester et de valeur à renvoyer. Elle se termine par une valeur par défaut si aucune correspondance n’a été trouvée.
IFS( (WEEKDAY(TODAY()) = 1), "Dimanche", (WEEKDAY(TODAY()) = 2), "Lundi", (WEEKDAY(TODAY()) = 3), "Mardi", (WEEKDAY(TODAY()) = 4), "Mercredi", (WEEKDAY(TODAY()) = 5), "Jeudi", (WEEKDAY(TODAY()) = 6), "Vendredi", TRUE, "Samedi", )
SWITCH(expression, cas1, valeur1, [cas2, valeur2 ...], valeur par défaut)
Si on reprend l’exemple précédent des jours de la semaine, cela donnerait:
SWITCH( WEEKDAY(TODAY()), 1, "Dimanche", 2, "Lundi", 3, "Mardi", 4, "Mercredi", 5, "Jeudi", 6, "Vendredi", "Samedi", )
Ici, la valeur par défaut est « Samedi ».
Les tests conditionnels propres à AppSheet
Visibilité des éléments basée sur une condition
L’une des utilisations les plus courantes des conditions IF dans AppSheet est de définir la visibilité des éléments de votre application en fonction d’une condition. Par exemple, vous pourriez vouloir masquer un bouton d’action dans une application de To-Do List tant que tous les conditions ne sont pas remplies.

Pour ce faire, vous pouvez utiliser une condition IF dans la propriété de visibilité de cet élément.

L’expression s’écrira comme suit:
AND(ISNOTBLANK([Condition1]), ISNOTBLANK([Condition2]), ISNOTBLANK([Condition3]))
Vous pouvez ajuster la condition en fonction de vos besoins, en utilisant des opérateurs logiques tels que AND, OR et NOT.
Affichage conditionnel d'une colonne
AppSheet vous permet de créer différentes vues pour organiser vos données. Parfois, vous voudrez peut-être masquer ou afficher certaines colonnes en fonction d’une condition. Cela peut être utile pour simplifier l’affichage lorsque certaines informations ne sont pas pertinentes dans un contexte particulier. Il vous suffit pour cela d’utiliser SHOW IF.

Dans cet exemple, la colonne sera affichée dans une « Vue Simple » et dans une « Vue Avancée » seulement si l’utilisateur a un niveau d’accès « Admin ».
IFS( [Type de Vue] = "Vue Simple", TRUE, [Type de Vue] = "Vue Avancée", [Niveau d'Accès] = "Admin", TRUE )
Validation des données lors de la saisie avec Valid If
Les conditions IF peuvent également être utilisées pour valider les données lors de la saisie. Par exemple, vous pouvez définir une règle pour s’assurer qu’un montant saisi est positif.

Il suffit alors de saisir l’expression suivante:
[Montant] > 0
Cette condition garantit que l’utilisateur ne peut pas saisir un enregistrement avec un montant négatif. Vous pouvez étendre cette idée pour inclure des validations plus complexes en fonction de plusieurs critères.
Modification dynamique des options d'une liste
Si votre application utilise des listes déroulantes, vous pouvez ajuster dynamiquement les options disponibles en fonction de certaines conditions. Par exemple, vous pourriez vouloir limiter les choix de produits en fonction de la catégorie sélectionnée.
Pour cela, il faut tout d’abord définir la colonne « Catégorie » en « Enum ». Ensuite, vous devez modifier le type de la colonne « Articles » en « EnumList » et mettre l’expression suivante dans la valeur initiale.
IFS(
[Type d'Article] = "Électronique", LIST("Smartphone", "Ordinateur"),
[Type d'Article] = "Vêtements", LIST("Hauts", "Bas"),
TRUE, {}
)
Cela va se traduire comme sur les 4 écrans suivants. Lorsque vous choisirez « Vêtements » dans la première liste déroulante, la seconde sera modifiée dynamiquement. Vous pouvez ensuite laisser la sélection multiple ou déselectionner certains éléments de la liste.




Personnalisation de l'interface utilisateur en fonction de l'utilisateur connecté
Les conditions IF peuvent également être utilisées pour personnaliser l’expérience utilisateur en fonction de l’utilisateur connecté. Par exemple, vous pourriez vouloir afficher un message de bienvenue différent en fonction du rôle de l’utilisateur.
IFS( USERROLE() = "Admin", "Bienvenue Administrateur!", USERROLE() = "Utilisateur", "Bienvenue Utilisateur!", "Bienvenue Invité!" )
Cette condition utilise la fonction USERROLE() pour déterminer le rôle de l’utilisateur et affiche un message de bienvenue en conséquence.
Conclusion
Les conditions IF dans AppSheet offrent une puissante souplesse pour personnaliser le comportement de votre application sans nécessiter de compétences de programmation avancées. En comprenant comment utiliser ces conditions de manière stratégique, vous pouvez créer des applications qui répondent de manière intelligente aux besoins de vos utilisateurs. Prenez le temps d’explorer et de pratiquer l’utilisation des conditions IF dans vos projets AppSheet pour tirer le meilleur parti de cette fonctionnalité polyvalente.
➡️ Retrouvez tous nos articles dans la catégorie AppSheet ⬅️
