🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

Fonction IF dans Excel — Une seule bifurcation oui/non, et quand cesser d'imbriquer

|

Fonction IF dans Excel — Une seule bifurcation oui/non, et quand cesser d'imbriquer

L'essentielIF pose une seule question oui/non et renvoie l'une de deux valeurs : =IF(test_logique, valeur_si_vrai, valeur_si_faux). Deux pièges attrapent tout le monde. D'abord, si vous omettez le troisième argument, un test faux renvoie le mot FALSE, pas une cellule vide — écrivez ,"") quand vous voulez du vide. Ensuite, arrêtez d'imbriquer les IF au-delà de deux niveaux : une pyramide haute de IF(…IF(…IF(…))) est illisible et un cauchemar de comptage de parenthèses. Pour plus de deux ou trois branches, passez à IFS/SWITCH ou à une table de recherche. Combinez les conditions avec AND()/OR() à l'intérieur du test — n'imbriquez pas. Fonctionne dans toutes les versions.

=IF(B2>=60, "Pass", "Fail")
=IF(AND(B2>=60, C2="Yes"), "Pass", "Fail")

IF est la première fonction que la plupart des gens apprennent après SUM, et celle dont ils se défont le plus lentement. Elle paraît simple — et un IF isolé l'est — mais les ennuis commencent à l'instant où vous avez un troisième ou un quatrième résultat et où vous tendez la main vers un IF imbriqué plutôt que vers le bon outil. Ce guide s'articule autour du modèle mental qui garde IF honnête, puis de l'unique règle qui vous dit quand vous arrêter.

Remarque : dans une interface Excel en français, la fonction s'appelle SI (IF). Apparentées : IFS = SI.CONDITIONS, SWITCH = SI.MULTIPLE, IFERROR = SIERREUR, IFNA = SI.NON.DISP, AND = ET, OR = OU, EXACT = EXACT, XLOOKUP = RECHERCHEX, ISBLANK = ESTVIDE, COUNTA = NBVAL, NA = NA, LET = LET. Dans Excel en français, les codes d'erreur s'affichent #N/A, #REF!, #NOM?, #VALEUR!, #DIV/0!. Les formules ci-dessous utilisent les noms anglais — le comportement est identique.

Ce que vous allez apprendre

  • Le modèle mental : IF est une seule bifurcation sur la route, rien de plus
  • Pourquoi un valeur_si_faux manquant renvoie le mot FALSE (et comment obtenir une cellule vide)
  • La pyramide de IF imbriqués — pourquoi elle s'effondre au-delà de deux niveaux, et quoi utiliser à la place
  • Combiner des conditions avec AND / OR au lieu d'imbriquer
  • Une surprise derrière « mon IF ne se déclenche jamais » : la comparaison de texte de IF ignore la casse
  • Le réflexe moderne : un seul IF qui se déverse sur toute une colonne

Le modèle mental : une bifurcation sur la route

Un IF est un embranchement unique. Il évalue un seul test logique — tout ce qui se résout en TRUE ou FALSE — et envoie le résultat sur l'une de deux voies :

' "Le score atteint-il au moins 60 ? Si oui, Pass ; si non, Fail."
=IF(B2>=60, "Pass", "Fail")

Voilà toute la fonction. test_logique est la question ; valeur_si_vrai et valeur_si_faux sont les deux routes. Gardez cette image en tête et la plupart des « problèmes de IF » se révèlent être des gens qui essaient de faire passer trois, quatre ou sept résultats par un embranchement conçu pour deux. Une bifurcation a deux sorties. À l'instant où il vous en faut une troisième, vous n'avez pas besoin d'un IF plus gros — vous avez besoin d'une autre forme.

La règle qui vous sauve : n'imbriquez pas au-delà de deux niveaux

Vous pouvez placer un IF dans un IF pour obtenir un troisième résultat, puis un quatrième, puis un cinquième. Excel autorise jusqu'à 64 niveaux. Presque aucun d'eux n'est une bonne idée.

' Trois tranches de notes en IF imbriqué — déjà difficile à lire
=IF(B2>=90, "A", IF(B2>=80, "B", IF(B2>=70, "C", "F")))

Chaque nouvelle tranche ajoute un niveau d'imbrication et une parenthèse fermante tout à la fin. Quand vous en avez cinq ou six, vous comptez les parenthèses pour retrouver où vit une branche, chaque modification risque un déséquilibre de parenthèses, et un collègue qui vous relit doit dérouler toute la pile dans sa tête. L'information y est entièrement — mais la structure se retourne contre vous.

Le verdict est sans détour : deux niveaux d'imbrication, c'est la limite ; au-delà, changez d'outil. Pour des tranches numériques ordonnées comme des notes, IFS se lit de haut en bas, sans pyramide. Pour associer des valeurs discrètes (un code à un libellé), SWITCH ou — mieux encore pour tout ce qui grandit ou change — une petite table de recherche avec XLOOKUP est bien plus maintenable. Une longue chaîne de IF imbriqués n'a rien d'astucieux ; c'est une facture de maintenance que vous tendez à la prochaine personne qui ouvrira le fichier.

La surprise FALSE : le troisième argument n'est pas optionnel en pratique

valeur_si_faux est techniquement facultatif. Omettez-le et Excel ne renvoie pas une cellule vide — il renvoie le booléen littéral FALSE :

=IF(B2>=60, "Pass")        ' score 40 -> la cellule affiche  FALSE
=IF(B2>=60, "Pass", "")    ' score 40 -> la cellule est vide

C'est la question « pourquoi ma cellule affiche-t-elle FALSE ? » la plus fréquente, et le remède est une habitude : fournissez toujours le troisième argument. Si vous ne voulez rien, dites-le explicitement avec "". Attention au piège de "" cependant — c'est une chaîne vide, pas une cellule réellement vide, donc un ISBLANK en aval lit FALSE et COUNTA la compte quand même. Si une formule ultérieure exige que la cellule soit véritablement numérique ou vide, renvoyez NA() ou un nombre, pas "".

Combinez les conditions avec AND / OR — n'imbriquez pas pour ça

Une énorme part des IF imbriqués n'existent que parce que quelqu'un avait besoin de deux conditions vraies en même temps et a tendu la main vers la mauvaise forme. On n'imbrique pas pour ça — on combine les tests à l'intérieur de test_logique avec AND ou OR :

' Imbriqué (ça marche, mais c'est plus dur à lire et à modifier)
=IF(B2>=60, IF(C2="Yes", "Pass", "Fail"), "Fail")

' AND — un seul test bien net
=IF(AND(B2>=60, C2="Yes"), "Pass", "Fail")

AND(…) est TRUE uniquement quand tous les tests passent ; OR(…) est TRUE dès que l'un d'eux passe. Ils réduisent une imbrication à deux niveaux en un seul embranchement lisible. Réservez l'imbrication à des questions en aval réellement différentes, pas à « ces deux conditions doivent être vraies » — ça, c'est le travail de AND, et c'est la même logique que vous utiliserez dans SUMIFS et FILTER.

La surprise de l'insensibilité à la casse : « mon IF ne se déclenche jamais »

La comparaison = de IF ignore la casse. "Yes" = "yes" est TRUE pour Excel, ce qui est généralement ce que vous voulez — jusqu'à ce que ça ne le soit plus :

=IF(A2="OK", 1, 0)              ' correspond à "OK", "ok", "Ok" — tous
=IF(EXACT(A2,"OK"), 1, 0)       ' correspond uniquement à "OK" exactement, casse comprise

Quand vous avez réellement besoin d'un test sensible à la casse — distinguer un code comme ID de id, ou une somme de contrôle — enveloppez-le dans EXACT(). (C'est l'image inversée de VBA, où = est sensible à la casse par défaut ; voir VBA UCase/LCase.) Savoir de quel côté Excel penche par défaut vous épargne le déroutant « les valeurs ont l'air identiques mais mon IF refuse de se déclencher ».

Le réflexe moderne : un seul IF qui se déverse sur une colonne

Dans Excel actuel, IF accepte une matrice comme test et déverse un résultat pour chaque ligne — pas de glisser-déposer, pas de recopie de formule vers le bas :

=IF(Score>=60, "Pass", "Fail")     ' Score est une plage -> un résultat par ligne, déversé

Pointez le test vers une colonne entière (une colonne de Table ou une plage de déversement #) et une seule cellule produit toute la liste de résultats, en se recalculant à mesure que la source grandit. Pour des sous-expressions répétées dans un long IF, nommez-les une fois avec LET afin qu'Excel ne les calcule qu'une seule fois — plus lisible et plus rapide sur de grandes feuilles.

Le jugement : IF vs IFS vs une table de recherche

Utilisez un IF simple pour un vrai binaire — une question, deux réponses. À l'instant où vous avez des tranches ordonnées (notes, paliers, seuils), passez à IFS : il se lit comme la table qu'il représente. Pour associer une valeur à un libellé (code de statut → description, région → responsable), utilisez SWITCH pour une courte liste fixe, ou un XLOOKUP sur une vraie table de recherche dès que la liste s'allonge ou évolue dans le temps. Le savoir-faire, ce n'est pas d'écrire des IF plus gros — c'est de reconnaître, tôt, laquelle de ces trois formes votre problème prend réellement.

Comment ExcelMaster aide

La vraie logique se décrit généralement en termes métier — réussir quiconque obtient au moins 60 et a aussi soumis, sinon échouer — pas en syntaxe de formule. ExcelMaster transforme cette phrase en la bonne forme : un seul IF avec AND quand c'est tout ce qu'il vous faut, ou un IFS/une recherche bien nets quand le problème a dépassé la simple bifurcation. Vous décrivez la décision ; il choisit la structure qui ne deviendra pas un cauchemar de comptage de parenthèses dans six mois.

Questions fréquentes

Pourquoi ma formule IF affiche-t-elle FALSE ?

Vous avez omis le troisième argument. =IF(test, valeur_si_vrai) renvoie le littéral FALSE quand le test échoue. Ajoutez un valeur_si_faux explicite : utilisez ,"") pour une cellule vide ou , "No" pour un libellé.

Combien de IF puis-je imbriquer dans Excel ?

Jusqu'à 64 niveaux — mais la lisibilité s'effondre bien avant. Limitez l'imbrication à deux niveaux au maximum ; pour davantage de branches, utilisez IFS, SWITCH ou une table de recherche.

Comment écrire un IF avec plusieurs conditions ?

Combinez les tests avec AND ou OR à l'intérieur du test logique, n'imbriquez pas : =IF(AND(B2>=60, C2="Yes"), "Pass", "Fail"). AND exige que tous les tests soient vrais ; OR qu'au moins un le soit.

Le IF d'Excel est-il sensible à la casse ?

Non. IF(A2="ok", …) correspond aussi bien à « OK », « Ok » qu'à « ok ». Pour une comparaison sensible à la casse, enveloppez-le dans EXACT : =IF(EXACT(A2,"OK"), …).

Quand devrais-je utiliser IFS plutôt que IF ?

Quand vous avez trois résultats ordonnés ou plus (comme des tranches de notes). IFS énumère chaque test et chaque résultat de haut en bas, sans imbrication ni parenthèses finales, ce qui le rend bien plus facile à lire et à modifier.

Testé dans

Testé dans : Excel 365 (Windows 11) — dernière vérification le 25/06/2026.

Guides associés : Excel IFS & SWITCH · Excel IFERROR · Excel SUMIFS · Excel FILTER