N’imbriquer pas les fonctions SI() sur Excel !

Guide « 108 astuces pour grands débutants sur Excel ! » Offert
Booster votre productivité en téléchargeant gratuitement votre ebook PDF des meilleures astuces pour les débutants et les pros d'Excel
Excel formation - 00 Astuces - 100
 

Dans une vidéo précédente, nous eut l’occasion de découvrir l’une des fonctions les plus utiles d’Excel qui est la fonction SI(). Aujourd’hui, nous allons voir comment aller beaucoup plus loin dans son utilisation en découvrant le principe d’imbrication.

Nous verrons également à la fin de ce tutoriel, que l’un des meilleurs usage que nous pouvons avoir de cette fonction SI(), sera parfois de ne simplement pas l’utiliser !

 

Téléchargement

Vous pouvez télécharger le fichier d'exemple de cet article en cliquant sur le lien suivant :

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
 

 

Tutoriel Vidéo

 

1. Présentation

Si vous vous avez l’habitude d’utiliser Excel, vous connaissez très probablement la fonction SI() qui permet de retourner dans une cellule un résultat différent en fonction d’un test.

Dans le cas contraire, vous trouverez plusieurs tutoriels sur le blog :

Pour rappel, cette fonction s’utilise de la manière suivante :

 =SI(Test_logique;[Valeur_si_vrai];[Valeur_si_faux])   

Où :

  • Test_logique est le test qu’Excel effectue afin de déterminer la valeur à retourner. Ce test retourne soit la valeur « VRAI », soit la valeur « FAUX ». Il peut s’agir soit d’un test effectué à l’aide d’un opérateur logique (exemples : « 1=2 » retourne « FAUX », alors que « 1<2 » retourne « VRAI »), soit d’un test effectué à l’aide d’une fonction prévue pour retourner l’une de ces deux valeurs (exemple : « ESTERREUR(#N/A) » retourne « VRAI », « ESTVIDE(A1) » retourne « VRAI » ou « FAUX » en fonction de la cellule A1).
  • Valeur_si_vrai est la valeur qui doit être retournée par Excel lorsque le premier paramètre de la fonction (Test_logique) est « VRAI »
  • Valeur_si_faux est la valeur qui doit être retournée par Excel lorsque le premier paramètre de la fonction (Test_logique) est « FAUX »

Pour illustrer le fonctionnement de cette fonction SI(), nous allons partir du tableau suivant dans lequel nous retrouvons les ventes effectuées par des commerciaux d’une entreprise au cours de l’année 2021 :

Excel formation - imbrication si - 01

Ici, nous allons chercher à savoir à identifier les ventes pour lesquelles le montant est supérieur à 15000€.

Nous utiliserons donc la fonction suivante :

 =SI(C9>15000;"Oui";"Non") 

Excel formation - imbrication si - 02

 

2. L’imbrication des fonctions SI()

Comme nous venons de le voir, la fonction SI() permet d’effectuer un test pour retourner une valeur donnée en fonction du résultat de ce test.

Mais parfois, ce test unique ne sera pas suffisant pour répondre à une problématique donnée.

Heureusement, il est possible de démultiplier les scénarios possibles en imbriquant des tests en tant qu’argument Valeur_si_vrai et Valeur_si_faux.

Imbriquer une fonction consiste à l’intégrer en tant qu’argument à l’intérieur même d’une autre fonction.

Revenons sur notre exemple.

Dans la colonne E, nous retrouvons le numéro correspondant au jour de la semaine, obtenu avec la fonction JOURSEM() que nous avons déjà eu l’occasion d’utiliser lors d’un tutoriel précédent :

 =JOURSEM(B9;2) 

Excel formation - imbrication si - 03

Pour obtenir le jour correspondant en toutes lettres, nous pouvons utiliser cette imbrication de fonction SI() de la manière suivante :

  =SI(E9=1;"Lundi";SI(E9=2;"Mardi";SI(E9=3;"Mercredi";SI(E9=4;"Jeudi";SI(E9=5;"Vendredi";SI(E9=6;"Samedi";SI(E9=7;"Dimanche";"Jour  inconnu"))))))) 

Nous commençons par effectuer le premier test, lequel consiste à regarder si la valeur de la cellule E9 est égale à 1. Lorsque c’est le cas, nous renvoyons le mot « Lundi », et dans le cas contraire, nous effectuons le deuxième test.

Nous répétons cette opération jusqu’à avoir analysé tous les jours de la semaine.

 

3. La limite de 7 sept imbrication SI()

Sur les anciennes versions d’Excel, le nombre de fonction SI() que nous pouvions imbriquer les unes dans les autres était de 7.

Impossible donc d’envisager de gérer un huitième jour de la semaine !

Maintenant, ce nombre est passé à 64 imbrications possibles… J’aurai presque envie de dire malheureusement !

En effet, comme le montre l’exemple précédent, imbriquer trop de formules les unes dans les autres présente un certain nombre d’inconvénients et doit être réservé uniquement aux situations pour lesquelles il n’existe pas d’alternative :

  • Une fonction trop imbriquée est difficilement lisible et interprétable,
  • Le risque d’erreur est également plus important,
  • Il faut bien gérer les parenthèses pour espérer valider la formule,
  • Les besoins en ressources sont également plus importants, et peuvent générer des ralentissements sur le fichier…

 

4. Les fonctions SI() évoluées

Depuis la version 2016 (ainsi la version 365 et Online), Excel propose deux fonctions directement déclinées de la fonction SI() qui permettent également de combler cette limitation du nombre d’imbrications maximum.

Il s’agit des fonctions des fonctions SI.CONDITIONS() et SI.MULTIPLE().

Tout d’abord, la fonction SI.CONDITIONS() se rapproche énormément de l’exemple que nous venons de voir, étant donné que celle-ci consiste à réaliser des tests successifs pour retourner un résultat donnée lorsque l’un de ces tests est égal à VRAI.

Nous pourrons donc modifier la fonction précédente de la manière suivante :

 =SI.CONDITIONS(E10=1;"Lundi";E10=2;"Mardi";E10=3;"Mercredi";E10=4;"Jeudi";E10=5;"Vendredi";E10=6;"Samedi";E10=7;"Dimanche")  

Excel formation - imbrication si - 04

Cette fonction permet donc de supprimer les références à la fonction SI() et ne pas risquer d’erreurs liées aux parenthèses.

Ensuite, la fonction SI.MULTIPLE() permet quant à elle d’accéder directement à la bonne valeur sans avoir besoin d’effectuer les tests successifs.

Nous commençons en effet par donner la référence de la cellule sur laquelle nous souhaitons effectuer le test, puis les couples d’arguments suivants seront constitués des valeurs possibles que la cellule peut prendre et du résultat à retourner :

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

Excel formation - imbrication si - 05

Mais, parfois, lorsque la fonction SI() devient trop complexe, alors cela voudra simplement dire que celle-ci n’est pas adaptée pour répondre à la problématique donnée, et nous devrons alors chercher une meilleure solution.

Si nous reprenons l’exemple présenté au-dessus, nous pouvons en effet simplifier grandement le déroulement du calcul en utilisant un tableau de saisie des correspondances au sein duquel nous irons récupérer les données avec une fonction de recherche :

Excel formation - imbrication si - 06

Ici, nous utiliserons les deux fonctions INDEX() et EQUIV() qui permettent comme l’avons vu dans le tutoriel de présentation d’effectuer des recherches complexes et qui restent fonctionnelles, même sur les anciennes versions d’Excel :

 =INDEX($I$9:$I$15;EQUIV(E9;$H$9:$H$15;)) 

Excel formation - imbrication si - 07

 

 



Articles qui pourraient vous intéresser

Percez les secrets de la fonction SOMME (SOMME.SI/SOMMEPROD) et des ces déclinaisons pour boostez votre productivité sur Excel ?
TOP3 des méthodes pour extraire des données par date dans Excel
Comment identifier la date la plus ancienne ou la plus récente en fonction de critères sur Excel ?
Comment calculer une moyenne sans tenir compte des zéros sur Excel ?
Comment fusionner des tableaux, les trier et supprimer les doubles avec une seule formule Excel ? (ASSEMB.V et ASSEMB.H)
Arrêtez d'imbriquer des fonctions SI() sur Excel ! Découvrez SI.MULTIPLE() et SI.CONDITIONS()
Comment obtenir efficacement le numéro de semaine d’une date donnée sur Excel ?
Comment identifier la cellule qui se répète le plus de fois sur Excel ? (Fonction MODE)
Comment améliorer votre gestion de données avec les fonctions base de données d’Excel ?
Créer une somme intelligente et dynamique sur Excel sans VBA
Quelle fonction permet de lister le nom des feuilles de calcul Excel sans VBA ?
Comment créer un décompte entre deux dates (jours, heures, minutes et secondes) sur Excel ?

Contact - Plan du site - À propos - Contact

© Excelformation.fr 2018-2024 - Excel, simplement

Haut de la page

Excelformation.fr propose de nombreuses formations pratiques et gratuites sur Microsoft Excel : des cours pour apprendre à structurer et analyser les données, des tutos sur les fonctions avancées, les formules et les formules avancées d'Excel, les formules matricielles, les mise-en-formes conditionnelles, les graphiques Excel (xls, xlsx, xlsm,…). Des tutoriels pour apprendre à automatiser les tâches répétitives (via des macro-commandes en VBA) de vos classeurs Excel.