Fonction SI EXCEL: maîtrisez les Conditions dans Excel!

Formule SI Excel Conditions

La fonction Excel SI est l'une des fonctions Excel les plus utilisées au quotidien. Elle permet d’évaluer une valeur (habituellement la valeur d’une cellule) selon une condition et de renvoyer une valeur différente selon si la condition est remplie ou pas.

La syntaxe de base de la fonction Excel SI

La syntaxe est relativement simple et se compose de trois parties:

=SI(Condition; Valeur si Condition est remplie; Valeur si Condition n’est pas remplie)
  • Condition – la condition compare deux valeurs (valeurs en dur, valeurs de cellule ou résultats de fonction) l’une par rapport à l’autre grâce à un des opérateurs logiques de Excel:
    • est égal à (=)
    • est différent de (<>)
    • est supérieur à (>)
    • est supérieur ou égal à (>=)
    • est inférieur à (<)
    • est inférieur ou égal à (<=)
  • Valeur si Condition est remplie – c'est la valeur (ou formule) que la fonction SI va renvoyer au cas où la condition est vraie (cet argument est facultatif)
  • Valeur si Condition n’est pas remplie – valeur (ou formule) renvoyé par la fonction SI dans le cas où la condition n'est pas remplie (cet argument est facultatif)
Conditions dans Excel - Utilisation de la fonction SI
Utilisation de la fonction SI dans Excel

Les valeurs renvoyés comme réponse peuvent contenir un texte (comme par exemple "Oui" ou "Non"), un chiffre, le contenu d’une cellule spécifique ou même une autre formule (qui peut, par exemple être une autre fonction SI – voir la section "Fonctions SI imbriquées" plus loin). Voici quelques exemples:

  • =SI(A3>6; "Oui"; "Non")
  • =SI(A3>6; A3; 0)
  • =SI(A3>6; B3*C3; B3*D3-2)

La valeur que l’on veut "tester" provient habituellement d’une cellule mais il peut s’agir de n’importe quelle valeur.

Exemple d'utilisation de la fonction SI dans une formule Excel

Passons maintenant à un exemple pratique de la vie quotidienne.

Nous pouvons tester, par exemple, si le jour d’aujourd’hui est un lundi et, selon le résultat, renvoyer une réponse approprié. Cet exemple exprimé en tant que formule Excel nous donne ceci:

=SI(JOURSEM(AUJOURDHUI();2)=1;"7 rapports à exécuter";"2 rapports à exécuter")

Vous pouvez constater que l'on teste le résultat d’une formule et non une valeur de cellule.

Maintenant que l'on s'est familiarisé avec la syntaxe de la fonction SI, on peut regarder de plus près son utilisation pratique.

Comme les deux arguments ("si vrai" et "si faux") sont facultatifs, il est possible d'écrire une formule en n'utilisant qu'un d'eux. Vous pouvez donc utiliser par exemple les formules SI suivantes:

  • =SI(A3<5;"test") – si la valeur de la cellule A3 est plus petite que 5, le résultat sera "test", sinon le résultat sera vide.
  • =SI(A3<5;;"négatif") – la fonction renvoie un résultat (mot "négatif") uniquement dans le cas où la cellule A3 a une valeur supérieure ou égale à 5. Notez que le résultat souhaité (mot "négatif") doit se trouver à sa place de 3ème argument (c'est pour cela qu'il y a deux point-virgules d'affilé)…

Fonctions SI imbriquées – Multiples Conditions dans Excel

Vous avez probablement déjà rencontré la situation qui exigeait de "mettre plusieurs fonctions SI les unes dans les autres". Il s'agit même de d'une situation tout à fait courante. Voici quelques informations et astuces pour vous permettre de gérer une telle situation (formule) de manière efficace et efficiente.

1. Utilisation des "paliers" dans les formules SI Excel

Pour faire simple, commençons par un exemple pratique:

Vous voulez grouper les problèmes d'après leur score pour pouvoir leur attribuer une priorité. Les groupes sont les suivants:

  • score inférieur à 5 = "priorité faible"
  • score entre 5 et 10 = "priorité moyenne"
  • score entre 10 et 15 = "priorité haute"
  • et score supérieur à 15 = "priorité absolue"

Si on suit ce raisonnement à la lettre, on va se retrouver avec une formule SI qui ressemblera à celle-ci:

=SI(A1<5;"priorité faible";SI(ET(A1>=5;A1<10)=VRAI;"priorité moyenne";SI(ET(A1>=10;A1<15)=VRAI;"priorité haute";SI(ET(A1>=15;A1<=20)=VRAI;"priorité absolue";""))))

Heureusement, la logique nous permettra de simplifier cette formule SI très peu lisible.

Explication (cliquez pour afficher)
Excel évalue les fonctions SI de manière séquentielle – c’est à dire une à la fois et dans l’ordre. Dans notre exemple, il passera à la seconde condition (score entre 5 et 10) seulement après avoir éliminé la première condition (score inférieur à 5). Cela implique que si Excel passe à la deuxième condition, il est sûr que le score est supérieur à 5 (sinon, Excel se serait arrêté à la première condition). Il en découle donc qu’il n’est pas nécessaire de mentionner A1>=5 dans la seconde condition. Il en va de même pour les conditions suivantes. En court: il suffit de déclarer “un seul côté” de chaque palier (à condition que les paliers soient dans le bon ordre).

La formule SI suivante donnera exactement le même résultat que la précédente. Tout en étant plus simple et plus rapide:

=SI(A1<5;"priorité faible";SI(A1<10;"priorité moyenne";SI(A1<15;"priorité haute";SI(A1<=20;"priorité absolue";""))))

Attention: quand vous allez déterminer vos paliers numériques, n'oubliez pas d'inclure/exclure les valeurs extrêmes des paliers pour que ces valeurs se retrouvent dans le palier correct (donc attention à la différence entre < et <= ainsi que entre > et >=). Dans l'exemple qui suit, la valeur "5" se retrouvera dans les paliers différents (dans le premier cas dans le premier palier, dans l'autre cas dans le deuxième palier):

  • =SI(A1<=5;"priorité faible";SI(A1<=10;"priorité moyenne";SI(A1<=15;"priorité haute";SI(A1<=20;"priorité absolue";""))))
  • =SI(A1<5;"priorité faible";SI(A1<10;"priorité moyenne";SI(A1<15;"priorité haute";SI(A1<=20;"priorité absolue";""))))

2. Ordre des Conditions SI selon la probabilité

L'utilisation des fonctions SI est relativement gourmande en ce qui concerne les ressources de votre ordinateur. Si vous utilisez un grande nombre de ce type de formules, ce qui suit pourrait vous intéresser.

Dans le cas des fonctions SI imbriquées, Excel évalue la première condition et si elle n'est pas remplie, il continue avec la deuxième, puis la troisième et ainsi de suite. Excel arrête le calcul seulement au moment ou une condition est remplie et un résultat peut être affiché. La règle qui en découle est la suivante:

Si vous le pouvez, veuillez à ce que la condition "VRAI" ait lieu le plus tôt possible. Autrement dit, commencez d'abord avec les conditions qui ont le plus de chances à être vraies. Ainsi, vous limitez le temps qu'Excel doit passer à calculer le résultat de la formule.

Un conseil donc: commencez avez une condition générale et gardez les exceptions pour la fin de votre formule SI imbriquée.

Exemple pratique: Si vous avez un commerce local à Lyon et vous voulez déterminer la nationalité de vos clients, vous avez tout intérêt à ne pas utiliser cette formule-ci:

=SI(PrenomClient="John";"Américain";SI(PrenomClient="Ivan";"Russe";SI(PrenomClient="Luigi";"Italien";SI(PrenomClient="Jean";"Français";""))))

mais à utiliser celle-ci:

=SI(PrenomClient="Jean";"Français";SI(PrenomClient="Luigi";"Italien";SI(PrenomClient="John";"Américain";SI(PrenomClient="Ivan";"Russe";""))))

La seconde formule sera nettement plus rapide que la première (en assumant que la plupart de clients sont Français)…

3. Limitation du nombre des fonctions SI imbriqués dans une formule Excel

Vous l'avez peut-être constaté par vous-mêmes: les développeurs de Microsoft ont limité le nombre des fonctions SI que vous pouvez imbriquer. Jusqu'à la version Excel 2003, ce maximum était de 7. À partir de Excel 2007, cette limite est augmentée à 64. Mais soyons réalistes: ce chiffre est purement théorique car en pratique une telle formule serait inutilisable! Même si on considère uniquement la limite de 7 fonctions (pour garantir la compatibilité avec Excel 2003), ce chiffre est, à mon avis, plus suffisant pour la grande majorité d'utilisateurs d'Excel.

Si vous voulez vraiment utiliser plus de 7 imbrication de la fonction SI, vous trouverez le mode d'emploi ici. Cependant, je le déconseille vivement pour deux raisons:

  1. une telle formule SI aura un impact considérable sur la performance (surtout si la formule est utilisée x-fois)
  2. cette fonction sera presque illisible et très difficilement modifiable. Il y a de fortes chances que vous allez vous perdre dans toutes ces parenthèses…

La bonne nouvelle est qu'il existe des alternatives. Vous les trouverez un peu plus loin sur cette page.

4. Astuces pour l'utilisation des formules avec des fonctions SI imbriquées

Heureusement, il existent certaines astuces pour rendre le travail avec des fonctions SI imbriquées plus facile. En voici deux:

4.1. Utilisation du retour à la ligne dans la "Barre de formule"

Normalement, une formule s'affiche en "sans interruption" dans la "Barre de formule" vous pouvez donc y voir ce type de formule:

=SI(C2<2;"très bas";SI(C2<5;"bas";SI(C2<9;"moyenne inférieure";SI(C2<12;"moyenne supérieure";SI(C2<15;"élevé";"très élevé")))))

Ce qui donne donc ceci:

Formule Excel avec des Fonctions SI imbriquées sans retour à la ligne
Fonctions SI imbriquées sans retour à la ligne

Comme vous pouvez le constater, une telle formule SI est difficilement lisible.

Mais on peut profiter du fait que les formules dans Excel sont insensibles aux espaces et aux retours à la ligne entre différents arguments. En plaçant des retours à la ligne aux bons endroits, nous pouvons rendre la formule beaucoup plus lisible. Un retour à la ligne dans Excel s'effectue en appuyant sur les touches Alt et Entrée.

Pour exactement la même formule, on peut donc avoir ceci dans la "Barre de formule":
=SI(C2<2;"très bas";
SI(C2<5;"bas";
SI(C2<9;"moyenne inférieure";
SI(C2<12;"moyenne supérieure";
SI(C2<15;"élevé";"très élevé")))))

N'est-ce pas bien plus lisible et plus simple à modifier?

Fonctions SI imbriquées avec retour à la ligne
Fonctions SI imbriquées avec retour à la ligne

4.2. Couleurs de parenthèses pour retrouver plus facilement les paires

Le problème que tout le monde a déjà probablement rencontré dans Excel est l'utilisation des parenthèses dans des formules Excel complexes. Ce n'est pas toujours facile d'avoir le bon nombre de parenthèses aux bons endroits. Et dans les formules avec des fonctions SI imbriquées, ce problème a lieu régulièrement.

Heureusement, il y a une aide pour cela. Quand vous cliquez dans la "Barre de formule" qui contient votre formule, Excel va vous afficher, avec des couleurs diverses, les cellules utilisées dans votre formule. Mais pas seulement! Il affiche également les paires des parenthèses correspondantes avec les couleurs différentes pour chaque paire. Il est donc plus facile de s'y retrouver. Et ceci est valable également pour d'autres formules complexes en Excel.

Fonction SI Excel avec des couleurs des parenthèses
Fonction SI avec des couleurs des parenthèses

 

Formule SI Excel avec des couleurs des parenthèses et des retours à la ligne
Fonction SI avec des couleurs des parenthèses et des retours à la ligne

5. Alternatives aux formules SI imbriquées

Si vous cherchez une alternative pour éviter la lourdeur des fonctions SI imbriquées, je vous propose les deux suivantes.

  • Excel 2019 nous apporte, parmi ses nouveautés, les fonctions SI.CONDITIONS et SI.MULTIPLE qui peuvent remplacer la structure des fonctions SI imbriquées. Ces fonctions vous permettent de lister des conditions et des résultats à afficher au cas où la condition est remplie. Un exemple: Si on utilisait la fonction SI.CONDITIONS à la place de la fonction SI dans notre exemple de la nationalité des clients d'un commerce local, on obtiendrait la formule:=SI.CONDITIONS(PrenomClient="Jean";"Français";PrenomClient="Luigi";"Italien";PrenomClient="John";"Américain";PrenomClient="Ivan";"Russe";"")La différence n'est pas énorme mais au moins on est débarrassés de la galère que représentent les parenthèses et de la répétition des "SI" …
  • Une autre alternative consiste en la création d'une fonction VBA (une UDF – "User Defined Function") qui utiliserait la structure Select Case. Si vous avez la possibilité d'utiliser les macros, songez à cette alternative car elle vous donne une grande flexibilité et n'est pas difficile à mettre en place (surtout grâce à notre tutoriel sur la structure Select Case en VBA)

Il en existe d'autres mais cela fera partie d'un autre tutoriel…

Formule Excel SI avec deux ou plusieurs conditions

Il est parfois nécessaires de vérifier plusieurs conditions en même temps pour pouvoir déterminer le résultat. De manière générale, on utilise deux types de vérifications:

  • si toutes les conditions sont remplies  – dans ce cas, on utilisera une formule qui combine les fonctions SI et ET
  • si au moins une des conditions est remplie – ici, la fonction SI sera combinée avec la fonction OU

Ces deux combinaisons élargissent grandement le champ d'application, la flexibilité et l'efficience de la fonction SI.

Fonction SI en combinaison avec fonction ET

Si l'on veut vérifier si plusieurs conditions sont remplies en même temps, il serait naturel de tester la premier condition avec une fonction SI et si elle est remplie, tester la condition suivante avec la fonction SI suivante etc. Ce qui, par exemple, dans le cas de trois conditions, pourrait nous mener à la formule suivante:

=SI(A1="ok";SI(A2="ok";SI(A3="ok";"tout est ok";"tout n'est pas ok");"tout n'est pas ok");"tout n'est pas ok")

Il est possible de simplifier cela. Le principe est de d'abord tester avec la fonction ET si toutes les fonctions sont remplies. Ensuite utiliser une seule fonction SI pour déterminer le résultat à renvoyer. Pour rappel, la fonction ET renvoie VRAI si toutes les conditions sont remplies et FAUX si au moins une condition n'est pas remplie. Ainsi, notre formule n'utilise que deux fonctions (1x SI et 1x ET) – ce qui rend la formule finale plus lisible et plus rapide.

En pratique, cela change la formule citée plus haut en la formule suivante:

=SI(ET(A1="ok";A2="ok";A3="ok")=VRAI;"tout est ok";"tout n'est pas ok")

Dans un cas plus complexe, on peut voir par exemple ceci:

Excel: Fonction SI en combinaison avec fonction ET

Vous pouvez voir la formule complète dans la "Barre de formule". Remarquez la fonction ET (comprenant 3 conditions) qui est surlignée en tant que condition de la fonction SI.

Fonction SI en combinaison avec fonction OU

Tout comme dans le cas précédent, le principe reste le même: vérifier grâce à la fonction OU si au moins une condition est remplie et utiliser ensuite la fonction SI pour renvoyer le résultat souhaité.

La formule SI suivante peut servir d'exemple:

=SI(OU(A1="ok";A2="ok";A3="ok")=VRAI;"au moins une valeur est ok";"rien n'est ok")

Pour rappel, la fonction OU renvoie VRAI si au moins une conditions est vraie. Elle renvoie FAUX si aucune condition n'est remplie.

À nouveau, grâce à cette combinaison, vous pouvez traiter par exemple 10 conditions différentes avec une formule composée de seulement deux fonctions

Encore un exemple plus pratique:

Fonction SI en combinaison avec fonction OU

Dans cet exemple, vous pouvez, à nouveau, voir que la condition de la fonction SI (ici il s'agit de la formule OU contenant trois conditions) est surlignée – c'est son résultat qui déterminera si la formule complète affichera "au moins une condition remplie" ou "aucune condition remplie".

Le cas "ultime": combinaison des fonctions SI, ET & OU dans une seule formule Excel

Les fonctions ET et OU ont un avantage considérable: il est possible de les combiner de telle sorte que cela peux couvrir un large éventail de possibilités. On reprend les principes cités plus haut pour chacune de ces fonctions et on peut l'appliquer à une situation concrète.

Prenons l'exemple suivant: Nous avons 3 conditions –  A, B et C et nous voulons sélectionner tout les cas où la condition A est remplie ainsi qu'au moins une condition parmi les conditions B et C. C'est tout à fait faisable. Et pour illustrer cet exemple de manière plus concrète, on peut le transposer à une situation réelle de manière suivante:

Formule SI Excel en combinaison avec les fonctions OU et ET

La formule SI finale à utiliser peut donc être la suivante:

=SI(ET(A2="janvier";OU(B2>10000;C2="Oui")=VRAI)=VRAI;"entre dans le calcul";"ne rentre pas dans le calcul")

Maintenant, il suffit d'utiliser ce principe en l'adaptant à vos besoins. Comme vous pouvez le constater, la fonction SI, en combinaison avec d'autres fonctions, peut résoudre des problèmes assez complexes…

Vous pouvez trouver et tester ces trois cas dans le fichier:

Démo de l'utilisation des fonctions SI, ET et OU

Autres utilisations de la fonction SI et les fonctions apparentées

Il existe en Excel d'autres fonctions bien pratiques qui fonctionnent sur le principe de la fonction SI. En voici la liste…

  • SIERREUR – une fonction très pratique grâce à laquelle vous éviterez que des erreurs tels que "#N/A", "#DIV/0!" ou encore "#VALEUR!" d'apparaître sur l'écran.
  • MAX.SI & MIN.SI – nouvelles fonctions (à partir de Excel 2016) qui permettent de déterminer la valeur maximale ou minimale parmi une liste des valeurs et qui remplissent une condition particulière.
  • MOYENNE.SI & SOMME.SI & NB.SI – fonctions permettant de calculer la moyenne, la somme ou le nombre de cellules qui correspondent à une condition / à un critère.
  • SI.MULTIPLE et SI.CONDITIONS – fonctions qui permettent d'imbriquer plusieurs fonctions SI dans une seule fonction (disponibles à partir de Excel 2019).

Pour aller plus loin en Excel…

Si vous n'en avez pas encore assez de la fonction SI en Excel, vous pouvez consulter la page Microsoft dédiée à cette fonction. Sinon je vous propose les articles suivants…

Laissez un commentaire

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

59 commentaires sur “Fonction SI EXCEL: maîtrisez les Conditions dans Excel!”