Formules conditionnelles Excel : IF, IFS, SWITCH et cas pratiques

Les formules conditionnelles sont au cœur de tout tableau de bord industriel digne de ce nom. Après dix ans à déboguer des fichiers de production mal ficelés, je peux vous dire qu'utiliser la bonne fonction conditionnelle au bon endroit fait la différence entre un outil maintenable et une usine à gaz. IF, IFS et SWITCH ont chacune leur domaine d'excellence, et les confondre coûte cher en lisibilité et en performance.

Cet article détaille quand utiliser quelle fonction, avec des cas réels rencontrés en production, qualité et logistique. Pas de théorie creuse : uniquement ce qui marche sur le terrain.

IF : la base incontournable mais limitée

La fonction IF reste le couteau suisse des conditions simples. Sa syntaxe =IF(condition; valeur_si_vrai; valeur_si_faux) est limpide pour des cas binaires.

Cas pratique qualité : validation d'une mesure par rapport à une tolérance.

=IF(B2<=10; "Conforme"; "Non conforme")

Le problème surgit avec les IF imbriqués. J'ai vu des formules avec 7 niveaux d'imbrication pour gérer des catégories de prix. Résultat : impossibles à maintenir, erreurs de parenthèses garanties, et performances dégradées sur 50 000 lignes.

Limite concrète : au-delà de 2 niveaux d'imbrication, IF devient contre-productif. C'est exactement là qu'IFS ou SWITCH prennent le relais.

IFS : la clarté pour les conditions multiples séquentielles

IFS évalue une série de conditions dans l'ordre et retourne le résultat de la première condition vraie. Syntaxe : =IFS(condition1; résultat1; condition2; résultat2; ...).

Cas pratique logistique : calcul des frais de port selon le poids.

=IFS(C2<=1; 5; C2<=5; 8; C2<=10; 12; C2>10; 15)

Cette formule est infiniment plus lisible que quatre IF imbriqués. Sur un fichier de 20 000 commandes, la différence de maintenabilité est spectaculaire.

Point d'attention : IFS n'a pas de valeur par défaut intégrée. Si aucune condition n'est vraie, vous obtenez une erreur #N/A. La solution professionnelle consiste à ajouter une dernière condition VRAI qui sert de filet de sécurité :

=IFS(C2<=1; 5; C2<=5; 8; C2<=10; 12; VRAI; 15)

Quand choisir IFS : conditions numériques avec des seuils multiples, hiérarchies de critères qui s'excluent mutuellement, ou toute situation où l'ordre d'évaluation compte.

SWITCH : l'efficacité pour les correspondances exactes

SWITCH compare une expression à une liste de valeurs et retourne le résultat correspondant. Syntaxe : =SWITCH(expression; valeur1; résultat1; valeur2; résultat2; ...; défaut).

Cas pratique production : traduction des codes machines en noms d'atelier.

=SWITCH(D2; "M01"; "Découpe"; "M02"; "Pliage"; "M03"; "Soudure"; "M04"; "Peinture"; "Non affecté")

L'avantage décisif : SWITCH est optimisé pour les correspondances exactes. Sur 100 000 lignes avec 15 codes possibles, j'ai mesuré un gain de 30% par rapport à une série de IF ou IFS.

Autre exemple finance : calcul de primes selon le service.

=SWITCH(E2; "Commercial"; F2*0.15; "Production"; F2*0.10; "Qualité"; F2*0.12; "Support"; F2*0.08; 0)

Le dernier argument sert de valeur par défaut si aucune correspondance n'est trouvée. Contrairement à IFS, c'est natif dans SWITCH.

Quand choisir SWITCH : correspondances exactes avec des codes, catégories fixes, ou toute situation où vous cherchez une égalité stricte plutôt qu'une condition de comparaison.

Tableau comparatif et critères de choix

Pour résumer concrètement :

  • IF : 1 à 2 conditions maximum, tests simples, structures binaires.
  • IFS : 3 à 10 conditions avec comparaisons (>, <, >=), seuils numériques, hiérarchies.
  • SWITCH : correspondances exactes sur codes/catégories, 5 à 50 valeurs possibles, performance critique.

Erreur fréquente : utiliser IFS pour des correspondances exactes alors que SWITCH est plus adapté. J'ai remplacé des =IFS(A2="PARIS"; 75; A2="LYON"; 69; ...) par des SWITCH et divisé par deux le temps de recalcul.

Astuce terrain : dans un contexte multilingue ou avec des référentiels évolutifs, préférez une vraie table de correspondance avec RECHERCHEX plutôt que de multiplier les SWITCH. Au-delà de 15-20 valeurs, la maintenance devient laborieuse.

Conclusion

Choisir la bonne fonction conditionnelle n'est pas qu'une question d'élégance : c'est un enjeu de maintenabilité et de performance sur les gros volumes. IF pour le simple, IFS pour les seuils multiples, SWITCH pour les codes fixes. Après des années à reprendre des tableaux de bord catastrophiques, je constate que cette distinction simple évite 80% des formules illisibles. Testez, chronométrez sur vos volumes réels, et privilégiez toujours la clarté : dans six mois, c'est vous ou votre successeur qui devrez comprendre cette formule en trois secondes.