Arrêtez d'écrire des formules IF et IFS imbriquées dans Excel : utilisez plutôt SWITCH
Agence web » Actualités du digital » Arrêtez d'écrire des formules IF et IFS imbriquées dans Excel : utilisez plutôt SWITCH

Arrêtez d'écrire des formules IF et IFS imbriquées dans Excel : utilisez plutôt SWITCH

Les formules Excel désordonnées sont plus qu'une simple horreur : elles sont plus difficiles à maintenir. Chaque référence de cellule répétée et chaque parenthèse enchevêtrée rend votre travail difficile à auditer, à modifier et à partager. C'est pourquoi vous devriez plutôt utiliser la fonction SWITCH. Il transforme le désordre en une formule plus propre, plus rapide et plus facile à comprendre.

HTG Wrapped 2025 : 24 jours de technologie

24 jours de nos matériels, gadgets et technologies préférés

Le SI imbriqué : un cauchemar structurel

Les formules IF imbriquées sont les poupées russes de Microsoft Excel. Vous commencez par une simple instruction IF, mais vous souhaitez ensuite ajouter une deuxième condition. Puis un troisième. Soudain, vous vous retrouvez à plusieurs niveaux de profondeur – un phénomène connu sous le nom de nidification.

Supposons que vous utilisiez ce tableau Excel pour suivre l'avancement du projet.

La formule que vous saisissez pour déterminer le statut en fonction des phases terminées ressemble à ceci :

=IF((@Completed)=0,"Pending",IF((@Completed)=1,"Active",IF((@Completed)=2,"Active",IF((@Completed)=3,"Closed","Error"))))

Ceci est problématique pour deux raisons principales :

  • Fatigue des parenthèses: Pour chaque SI que vous ouvrez, vous devez le fermer à la toute fin. Dans des feuilles de travail complexes, vous vous retrouvez souvent à regarder une chaîne de )))), en vous demandant si vous en avez oublié.
  • Complexité visuelle : Pour comprendre ce qui se passe lorsque la colonne Terminé indique 3, votre cerveau doit d'abord sauter deux autres instructions IF.

Lorsque vous utilisez des IF imbriqués, vous construisez une tour logique fragile. Une mauvaise virgule et tout s’effondre.


Logo Excel entouré de parenthèses, de crochets et d'accolades.

Comment utiliser les parenthèses, les crochets et les accolades dans Microsoft Excel

Qui aurait cru que des symboles simples pouvaient être si puissants ?

La fonction IFS : Un cauchemar de redondance

Lorsque Microsoft a introduit la fonction IFS dans Excel, son objectif était de résoudre le cauchemar dont j'ai parlé ci-dessus. Il a réussi à aplatir la structure, vous permettant ainsi de lister les conditions les unes après les autres sans les imbriquer.

En utilisant cette fonction dans le même tableau, vous taperiez :

=IFS((@Completed)=0,"Pending",(@Completed)=1,"Active",(@Completed)=2,"Active",(@Completed)=3,"Closed")

Même si IFS constitue une amélioration par rapport à l'imbrication, il introduit de nouveaux problèmes :

  • Redondance: Notez combien de fois vous devez saisir (ou cliquer) le nom de la colonne référencée dans la formule, une fois pour chaque test logique. Cela crée des formules bruyantes, deux fois plus longues que nécessaire et plus difficiles à entretenir.
  • Aucun argument « else » par défaut : Contrairement à l'IF d'origine, IFS n'a pas d'argument final « si tout le reste échoue ». Par conséquent, si vos données ne correspondent à aucun de vos critères, la formule renvoie une erreur #N/A. Pour résoudre ce problème, vous pouvez ajouter une instruction TRUE supplémentaire à la fin, mais cela ne ferait qu'ajouter plus de bruit à la formule.

En bref, IFS résout le cauchemar des parenthèses, mais il ne résout pas le désordre.

La solution : COMMUTATEUR

La fonction SWITCH vous permet de définir vos règles dans une liste claire, faisant de votre formule moins un calcul complexe qu'une simple traduction.

La syntaxe SWITCH

La fonction SWITCH d'Excel a une syntaxe logique :

=SWITCH(target,value1,result1,(value2,result2),...,(default))

où:

  • cible est la valeur ou la référence de cellule à comparer valeur1, valeur2, valeur3et ainsi de suite.
  • valeur1 est la première valeur qui sera comparée à la cible.
  • résultat1 est la valeur à renvoyer lorsque valeur1 correspond à cible.
  • valeur2, résultat2 est la deuxième paire valeur-résultat jusqu'à un maximum de 126.
  • défaut est le seul argument après votre appariement valeur-résultat final qui représente la valeur « else » (filet de sécurité) à renvoyer si aucune correspondance n'est trouvée dans le valeur arguments.

Le résultat et autre les arguments doivent être entre guillemets s’il s’agit de chaînes de texte.

COMMUTATEUR en action

Voici la formule que vous pouvez utiliser dans la colonne Statut de votre suivi de progression :

=SWITCH((@Completed),0,"Pending",1,"Active",2,"Active",3,"Closed","Unknown")

Voici pourquoi il s'agit d'une meilleure option dans ce contexte :

  • Tu ne pointes qu'une seule fois: Vous référencez la colonne Terminé une seule fois. Dans une grande feuille de calcul, réduire plusieurs références à une seule rend votre formule beaucoup plus claire, beaucoup plus difficile à casser et plus facile à modifier.
  • Lisibilité aisée : Puisqu'il n'y a pas de références répétées, vous pouvez le lire en anglais simple : « Regardez la colonne terminée ; si c'est 0, en attente ; si c'est 1, actif… » et ainsi de suite.
  • Filet de sécurité intégré : Si quelqu'un saisit un nombre dans la colonne Terminé qui ne devrait pas s'y trouver, SWITCH détecte l'erreur avec un argument « else » à la fin (« Inconnu »).

En utilisant SWITCH, vous arrêtez de vous battre avec des syntaxes complexes et commencez à écrire des formules qui ont réellement du sens.

Le hack SWITCH(TRUE) : le choix de l'utilisateur expérimenté

Une critique courante de la fonction SWITCH d'Excel est qu'elle ne gère que les correspondances exactes, comme transformer le chiffre 1 en mot « Actif ». Si vous souhaitez utiliser des symboles supérieur ou inférieur à, la plupart des gens supposent qu'ils doivent revenir à la logique compliquée de IF ou IFS.

Cependant, vous pouvez réellement utiliser SWITCH pour les plages en utilisant une astuce astucieuse : commencez la formule par TRUE :

=SWITCH(TRUE,(@Completed)=0,"Pending",(@Completed)<=2,"Active",(@Completed)=3,"Closed","Error")

En définissant le tout premier argument sur VRAI, vous dites à Excel de continuer à parcourir la formule jusqu'à ce que vous trouviez une déclaration vraie. Cela signifie que vous pouvez couvrir à la fois 1 et 2 en même temps, en renvoyant « Actif » dans un seul argument.

Une autre raison pour laquelle cela change la donne est que vous obtenez la flexibilité mathématique d'une instruction IF tout en conservant la structure de liste propre et linéaire de SWITCH.


Un bureau avec un livre comportant le logo Excel sur la couverture, une icône de fonction à côté et un clavier.

Le guide du débutant sur la logique booléenne dans Microsoft Excel

Boostez votre avantage booléen.

Le compromis « point une fois »

Voici l'avertissement : l'utilisation de l'astuce TRUE sape légèrement la règle du « point une fois » dont j'ai parlé plus tôt. Étant donné que vous utilisez des opérateurs mathématiques (< ou >), vous devez répéter la référence pour chaque test logique, un peu comme vous le feriez dans une formule IFS.

Cependant, vous pouvez contourner cette règle ici, car vous échangez une répétition minimale contre une organisation maximale. Même avec des références répétées, la structure de SWITCH maintient votre logique dans une liste stricte et linéaire. Cela signifie que vous ne cherchez pas à fermer des parenthèses ou que vous ne vous demandez pas dans quel nid vous vous trouvez actuellement.

De plus, vous bénéficiez toujours de ce dernier argument « sinon » à la fin : un filet de sécurité que l'IFS n'offre pas.

Choisir la bonne fonction

Même si SWITCH est idéal pour mettre de l'ordre dans votre logique, ce n'est pas une baguette magique pour chaque scénario. Il y a des moments où les formules imbriquées ou les instructions IFS complexes constituent en réalité le choix le plus logique :

Scénario

Formule à utiliser

Explication

Comparer une cellule à des valeurs spécifiques.

CHANGER

L’option la plus propre, la plus courte et la plus lisible.

Comparer une cellule à des plages simples

COMMUTATEUR (VRAI)

Maintient une structure de liste linéaire tout en permettant les opérations mathématiques.

Évaluation de plusieurs colonnes dans une seule formule.

IFS

SWITCH évalue un sujet ; IFS peut vérifier plusieurs conditions indépendantes.

Déclenchement de différentes fonctions en fonction d'un résultat.

SI imbriqué

Si le résultat est une autre formule ou un autre calcul, IF peut être plus facile à déboguer.

Travailler dans Excel 2016 ou version antérieure.

SI imbriqué

Les anciennes versions d'Excel ne prennent pas en charge SWITCH ou IFS.


Si vous utilisez plusieurs fois le même calcul complexe dans une seule formule, utilisez la fonction LET, qui vous permet d'attribuer des noms aux résultats du calcul. En indiquant vos variables au début de la formule, vous pouvez rendre vos formules encore plus claires, plus rapides et plus faciles à auditer.

Système d'exploitation

Windows, macOS, iPhone, iPad, Android

Essai gratuit

1 mois

Microsoft 365 inclut l'accès aux applications Office telles que Word, Excel et PowerPoint sur jusqu'à cinq appareils, 1 To de stockage OneDrive et bien plus encore.

★★★★★