«

»

SI imbriqués

Présentation


Dans certaines situation, vous souhaitez tester plusieurs valeurs d’un résultat ou d’une cellule. Si lundi alors, … si mardi alors, si mercredi alors, …

Seulement, avec la fonction SI nous ne pouvons retourner que 2 résultats, quand le test est VRAI ou FAUX.

Depuis les toutes premières versions d’Excel, le seul moyen de retourner plus de 2 résultats avec une fonction SI c’était de faire des SI imbriqués comme nous allons le voir dans cet article.

Mais depuis la nouvelle version d’Excel 2016 ou Office 365, de nouvelles fonctions sont maintenant disponibles pour gagner en lisibilité et écrite un test avec des SI imbriqués simplement.

Il s’agit des fonctions

  • SI.CONDITIONS
  • SI.MULTIPLE

Une autre façon de concevoir des SI imbriqués, c’est d’utiliser la fonction RECHERCHEV en valeur approchante dans le cas ou vous voulez retourner une valeur par tranche (mention du bac, prime aux commerciaux, calculs des heures supplémentaires, …)

Faire des SI Imbriqués

Le test logique

Pour reprendre l’exemple de la vidéo insérée dans cet article, nous allons commencer par créer un test logique qui va comparer le stock fin de mois avec le stock de début de mois.

=G2<D2

Si le stock fin de mois est inférieur, alors il y a eu déstockage et le test retournera VRAI.

La première fonction SI

Nous allons insérer ce test dans une fonction SI pour retourner non pas VRAI ou FAUX mais un écrire le mot Déstockage quand la quantité fin de mois est inférieur à la quantité du début de mois.

=SI(G2<D2;”Déstockage”; ……..

Mais ici, nous ne pouvons pas terminer l’écriture de la fonction SI car nous devons traiter les cas ou

  • nous avons eu une augmentation des stocks
  • le stock n’a pas changé

Quand vous devez retourner plus de 2 résultats il n’y a pas d’autre choix que d’écrire une seconde fonction SI à la place du premier paramètre FAUX de la première fonction SI.

La deuxième fonction SI

Nous allons mettre à la place du paramètre FAUX une seconde fonction SI mais avec un test différent cette fois-ci. Notre nouveau test sera de tester si la quantité en fin de mois est supérieure à la quantité en stock en début de mois. La formule devient :

=SI(G2<D2;”Déstockage”;SI(G2>D2;”Re-stockage”;”Pas de changement”))

si_imbrique_1

La fonction est constituée de 2 tests et de 3 résultats.

Améliorer la visibilité de votre formule

Quand vous concevez des SI imbriqués, vous risquez de rajouter des tests les uns derrière les autres qui rendront la lisibilité de votre formule très difficile, aussi bien pour vous que pour ceux qui vont ouvrir votre classeur.

Pour améliorer la visibilité des SI imbriqué vous pouvez insérer des sauts de ligne à l’intérieur de votre formule. Pour cela il vous suffit de positionner votre curseur à l’endroit où souhaitez faire un saut de ligne et vous appuyez sur les touches Alt + Entrée

si_imbrique_2

Même formule mais avec saut de ligne

Nouvelles formules dans Excel 2016




Les SI imbriqués ont toujours été compliqués à concevoir. Voilà pourquoi, les équipes de développement de Microsoft ont ajouté de nouvelles fonctions en février 2016 dans la version d’Excel 2016 pour améliorer la construction et la lisibilité des SI imbriqués.

La fonction SI.CONDITIONS

Comme le S final de la fonction vous le fait deviner, la nouvelle fonction SI.CONDITIONS vous permet d’écrire toutes vos conditions les unes à la suite des autres. Et pour chacune d’elle, le résultat a afficher. L’écriture est la suivante

=SI.CONDITIONS(Test1;Résultat1;Test2;Résultat2;Test3;Résultat3;…)

Il y a cependant un piège à éviter. Si aucun test n’ai vérifié, la fonction va retourner l’erreur #N/A (qui signifie en anglais Not Applicable). Autrement dit, il est indispensable de prévoir en dernier élément de votre formule une fonction VRAI qui va gérer les cas où aucun des précédents tests ne sont VRAI (re-visionner la vidéo à ce sujet). L’écriture devient à alors

=SI.CONDITIONS(Test1;Résultat1;Test2;Résultat2;Test3;Résultat3;…;VRAI;””)

A titre d’exemple, vous voulez attribuer une prime à vos vendeurs selon le nombre de voitures qu’ils ont vendu au cours du mois. Vous attribuez une prime de

  • 20 % pour ceux qui ont vendu 20 voitures et plus
  • 10 % pour ceux qui ont vendu 15 voitures
  • 5 % pour ceux qui ont vendu 10 voitures

 

La formule s’écrit de la façon suivante mais elle n’est pas complète à cause des vendeurs qui vendent moins de 10 voitures et donc qui n’ont pas de prime. Ceci génère une erreur dans le résultat.

=SI.CONDITIONS(B2>20;20%;B2>15;10%;B2>10;5%)

La formule complète est la suivante

=SI.CONDITIONS(B2>20;20%;B2>15;10%;B2>10;5%;VRAI;””)

Corrigez directement dans le classeur ci-dessus (ou changez les valeurs de la colonne B) pour voir comment la fonction réagie.

La fonction SI.MULTIPLES

Pour la fonction SI.MULTIPLE le comportement est différent.

En fait nous évaluons le résultat d’une cellule et nous indiquons les différentes valeurs que nous pouvons rencontrer. En fait, cette formule se comporte comme la fonction Select Case en VBA ou Switch dans d’autres langages informatiques.

Prenons l’exemple des jours de la semaine vous avez en cellule A1 une valeur qui va de 1 à 7 pour écrire le jour de la semaine correspondant nous allons écrire la formule suivante :

=SI.MULTIPLE(A1;1;”Lundi”;2;”Mardi”;3;”Mercredi”;4;”Jeudi”;5;”Vendredi”;6;”Samedi”;7;”Dimanche”)

Changez la valeur en A1 et double-cliquez sur la cellule en B1 pour voir la formule dans son entier.




Lien Permanent pour cet article : https://www.excel-exercice.com/si-imbriques/

(2 commentaires)

  1. Formation Excel

    Le travail devient mieux efficace et peux pénible avec l’apparition de ces deux nouvelles fonctions SI.CONDITIONS et SI.MULTIPLE.
    Merci pour ces infos!

    1. Frédéric LE GUEN

      De rien 🙂

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *