L'essentiel —
NOTinverse un seul verdict :NOT(TRUE)vautFALSE.XORest le ou exclusif — avec deux entrées, il estTRUEseulement quand elles diffèrent. Deux pièges font tout le mal. D'abord,NOTprend exactement un argument, donc pour nier une condition composée vous devez écrireNOT(AND(a, b))— et sa vraie valeur, c'est la loi de De Morgan, qui réécrit une condition emmêlée en une plus simple. Ensuite,XORavec 3 entrées ou plus ne signifie pas « exactement une est vraie » — il renvoieTRUEpour un nombre impair deTRUE. Pour « exactement un parmi plusieurs », comptez plutôt.NOTfonctionne partout ;XORexige Excel 2013+.
=IF(NOT(ISBLANK(A2)), "Filled", "Empty") ' inverser un seul verdict
=XOR(A2="Yes", B2="Yes") ' TRUE si exactement un dit Yes
NOT et XOR sont les deux fonctions logiques vers lesquelles les gens tendent la
main en dernier et qu'ils utilisent le plus mal. NOT paraît redondant jusqu'à ce
que vous découvriez l'unique chose pour laquelle il est réellement bon ; XOR
paraît évident jusqu'à ce qu'il renvoie discrètement le contraire de ce que vous
attendiez sur trois entrées. Les deux prennent tout leur sens dès que vous voyez à
quoi chacun sert vraiment.
Remarque : dans une interface Excel en français, les fonctions s'appellent NON (NOT) et OUX (XOR). Apparentées : AND = ET, OR = OU, IF = SI, ISBLANK = ESTVIDE, ISNUMBER = ESTNUM, COUNTIF = NB.SI, SUMPRODUCT = SOMMEPROD, FILTER = FILTRE. 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 :
NOTest un interrupteur à bascule,XORun détecteur de différence - Pourquoi
NOTprend exactement un argument — et le piège de la condition composée - Quand
NOTmérite sa place, et quand il n'est qu'un<>endimanché - La loi de De Morgan : la réécriture qui rend
NOTdigne d'être connu XORavec deux entrées (« elles diffèrent ») vs la surprise du nombre impair sur 3 entrées ou plus- Le bon outil pour « exactement un parmi plusieurs » — et ce n'est pas
XOR
Le modèle mental : un interrupteur à bascule et un détecteur de différence
NOT est un interrupteur pour un seul verdict. Quel que soit le TRUE/FALSE qui
entre, l'opposé ressort — rien de plus. XOR est un détecteur de différence :
donnez-lui deux conditions et il répond « ces deux-là sont-elles différentes ? »
=NOT(A2>10) ' TRUE quand A2 n'est PAS supérieur à 10
=XOR(A2>10, B2>10) ' TRUE quand exactement l'un des deux est supérieur à 10
Gardez ces deux images séparées — une inversion et une différence — et vous ne
les confondrez jamais avec AND/OR, qui combinent des conditions au lieu de
les inverser ou de les comparer.
NOT prend exactement un argument (le piège de la composition)
NOT nie une seule valeur logique. C'est l'erreur que les gens rencontrent en
premier — essayer de nier deux conditions d'un coup :
=NOT(A2>0, B2>0) ' FAUX — trop d'arguments
=NOT(AND(A2>0, B2>0)) ' JUSTE — nier le verdict combiné
Pour inverser une condition composée, vous devez d'abord la combiner (avec
AND/OR) en un seul verdict, puis inverser
ce verdict. NOT est le dernier maillon de la chaîne, jamais le combineur.
Quand NOT mérite sa place — et quand il n'est qu'un <> déguisé
Voici la part honnête que la plupart des guides sautent : une bonne partie des
usages de NOT n'est que du bruit. NOT(A2="x") est exactement A2<>"x", en
plus long et plus dur à lire :
=NOT(A2="Done") ' ça marche, mais...
=A2<>"Done" ' ...ceci est plus clair
=NOT(A2>10) ' ça marche, mais A2<=10 est plus clair
Pour une simple comparaison, utilisez l'opérateur inverse (<>, <=, >=) et
laissez tomber NOT entièrement. NOT gagne son pain à deux endroits : nier une
fonction qui renvoie déjà un booléen là où il n'existe pas d'opérateur à
inverser — NOT(ISBLANK(A2)), NOT(ISNUMBER(A2)) (voir les fonctions
IS) — et nier une condition nommée ou composée
pour que la formule se lise comme une phrase. Si vous pouvez exprimer le même test
avec un seul opérateur de comparaison, c'est presque toujours le meilleur choix.
La loi de De Morgan : le vrai superpouvoir de NOT
Si NOT vaut la peine d'être connu, c'est parce qu'il vous permet de réécrire
une logique emmêlée. La loi de De Morgan dit que nier un AND le transforme en un
OR des négations, et réciproquement :
' "NON (à la fois A et B)" équivaut à "(non A) OR (non B)"
=NOT(AND(A2="EU", B2>1000)) = =OR(A2<>"EU", B2<=1000)
' "NON (soit A soit B)" équivaut à "(non A) AND (non B)"
=NOT(OR(Status="Void", Status="Draft")) = =AND(Status<>"Void", Status<>"Draft")
Cela compte parce qu'une forme est presque toujours plus facile à lire et à
alimenter dans un IF ou un
FILTER. Si vous vous surprenez à écrire
« garder tout ce qui n'est pas annulé et pas un brouillon », la forme
AND(...<>...) de droite est plus claire qu'un enveloppement NOT(OR(...)).
Connaître l'échange vous permet de choisir la formulation qui se lit le mieux au
lieu de rester coincé avec celle que vous avez écrite en premier.
XOR avec deux entrées : « elles diffèrent »
Avec exactement deux conditions, XOR est le test « l'une mais pas les deux » —
TRUE quand les entrées sont en désaccord, FALSE quand elles concordent :
| A | B | OR |
XOR |
|---|---|---|---|
| FALSE | FALSE | FALSE | FALSE |
| TRUE | FALSE | TRUE | TRUE |
| FALSE | TRUE | TRUE | TRUE |
| TRUE | TRUE | TRUE | FALSE |
La seule ligne où XOR et OR divergent est la dernière : OR dit « oui, au
moins un », XOR dit « non — les deux, ce n'est pas permis ». C'est là le vrai cas
d'usage — des drapeaux mutuellement exclusifs qui ne devraient jamais être activés
en même temps :
=IF(XOR(C2="Paid", D2="Refunded"), "OK", "Check: both or neither")
La surprise XOR : 3 entrées ou plus signifie « nombre impair », pas « exactement un »
Voici le piège qui attrape presque tout le monde. Il est naturel de lire XOR
comme « exactement une est vraie ». Avec deux entrées, cela se trouve être exact.
Avec trois entrées ou plus, ce ne l'est pas — XOR renvoie TRUE quand un
nombre impair d'entrées sont vraies :
=XOR(TRUE, TRUE, TRUE) ' -> TRUE (trois vrais = impair), PAS "exactement un"
=XOR(TRUE, TRUE, FALSE) ' -> FALSE (deux vrais = pair)
=XOR(TRUE, FALSE, FALSE) ' -> TRUE (un vrai = impair)
XOR est en réalité un contrôle de parité — il compte combien de vrais il y a
et signale si ce nombre est impair. C'est occasionnellement exactement ce que vous
voulez (bits de parité, chaînes de bascule), mais ce n'est presque jamais ce que
quelqu'un veut dire quand il affirme « exactement une de ces cases est cochée ».
Pour « exactement un parmi plusieurs », comptez plutôt
Quand il vous faut réellement « un et un seul de ceux-ci est vrai », cessez
d'utiliser XOR et comptez directement les vrais — puis vérifiez que le compte
égale 1 :
=(--(A2="Yes") + --(B2="Yes") + --(C2="Yes")) = 1 ' exactement un Yes
=COUNTIF(B2:D2, "Yes") = 1 ' même idée sur une plage
Le -- convertit chaque TRUE/FALSE en 1/0 (la même astuce qui alimente
SUMPRODUCT), donc la somme est
littéralement « combien sont vrais ». La comparer à 1 dit « exactement un » ; à
>=1 dit « au moins un » (c'est OR) ; à =0 dit « aucun ». Le comptage
s'adapte à n'importe quel nombre de conditions et ne vous surprend jamais avec une
histoire de parité.
Le jugement
- Inverser un seul verdict issu d'une fonction qui renvoie un booléen →
NOT(par ex.NOT(ISBLANK(...))). - Nier une simple comparaison → utilisez
<>,<=,>=, pasNOT. - Simplifier un
NOT(AND/OR(...))emmêlé → appliquez la loi de De Morgan et gardez le côté lisible. - Deux drapeaux mutuellement exclusifs →
XOR. - « Exactement un parmi plusieurs » → comptez avec
--/COUNTIF, jamaisXORsur 3 entrées ou plus.
Comment ExcelMaster aide
La logique qui piège les gens ici est subtile — « pas les deux », « exactement
un », « aucun d'eux » — et la mauvaise fonction échoue en silence, en renvoyant
une réponse plausible mais fausse dans les cas limites. ExcelMaster lit la
règle telle que vous la formulez — signaler les lignes où exactement une case
d'approbation est cochée — et écrit la forme qui veut réellement dire cela (un
comptage =1, pas une parité XOR), ou applique la loi de De Morgan pour changer
une double négation en quelque chose que vous saurez relire dans six mois.
Questions fréquentes
Que fait la fonction NOT dans Excel ?
NOT inverse une seule valeur logique : NOT(TRUE) vaut FALSE et NOT(FALSE)
vaut TRUE. Il prend exactement un argument, donc pour nier une condition
composée vous l'enveloppez : NOT(AND(A2>0, B2>0)).
Ai-je vraiment besoin de NOT, ou puis-je utiliser <> à la place ?
Pour une simple comparaison, <> (ainsi que <=, >=) est plus clair : A2<>"x"
l'emporte sur NOT(A2="x"). Utilisez NOT surtout pour inverser une fonction qui
renvoie un booléen — NOT(ISBLANK(A2)) — ou pour nier tout un composé AND/OR.
Quelle est la différence entre OR et XOR dans Excel ?
Avec deux entrées, ils s'accordent sauf lorsque les deux sont vraies : OR
renvoie TRUE, XOR renvoie FALSE. XOR, c'est « l'un mais pas les deux ».
Utilisez OR pour « au moins un », XOR pour des drapeaux mutuellement exclusifs.
Pourquoi XOR renvoie-t-il TRUE quand trois conditions sont vraies ?
Parce que XOR teste la parité, et non « exactement un ». Il renvoie TRUE
pour un nombre impair d'entrées TRUE, donc trois vrais (impair) donnent TRUE.
Pour « exactement un parmi plusieurs », comptez plutôt les vrais :
COUNTIF(range, TRUE)=1.
Comment tester qu'exactement une de plusieurs cellules est remplie ?
Comptez et comparez à 1 : =COUNTIF(B2:D2, "Yes")=1, ou
=(--(A2="Yes")+--(B2="Yes")+--(C2="Yes"))=1. N'utilisez pas XOR pour plus de
deux conditions — il vérifie l'impair/pair, pas « exactement un ».
Testé dans
Testé dans : Excel 365 (Windows 11) — dernière vérification le 04/07/2026.
Guides associés : Excel AND & OR · Excel IS functions · Excel IF · Excel SUMPRODUCT · Excel FILTER
