Resumen —
NOTinvierte un veredicto:NOT(TRUE)esFALSE.XORes el o exclusivo — con dos entradas esTRUEsolo cuando difieren. Dos trampas hacen el daño. La primera:NOTtoma exactamente un argumento, así que para negar una condición compuesta debes escribirNOT(AND(a, b))— y su verdadero valor es la ley de De Morgan, que reescribe una condición enredada en otra más simple. La segunda:XORcon 3 o más entradas no significa «exactamente una es verdadera» — devuelveTRUEcuando hay un número impar deTRUE. Para «exactamente uno de muchos», cuenta en su lugar.NOTfunciona en todas partes;XORnecesita Excel 2013+.
=IF(NOT(ISBLANK(A2)), "Filled", "Empty") ' invierte un veredicto
=XOR(A2="Yes", B2="Yes") ' TRUE si exactamente uno dice Yes
NOT y XOR son las dos funciones lógicas a las que la gente echa mano en
último lugar y más mal usa. NOT parece redundante hasta que aprendes la única
cosa en la que de verdad es buena; XOR parece obvia hasta que devuelve en
silencio lo contrario de lo que esperabas con tres entradas. Ambas cobran sentido
en cuanto ves para qué sirve cada una en realidad.
Nota: en una interfaz de Excel en español, NOT se llama NO y XOR se llama XO. Relacionadas: AND = Y, OR = O, IF = SI, ISBLANK = ESBLANCO, ISNUMBER = ESNUMERO, COUNTIF = CONTAR.SI, SUMPRODUCT = SUMAPRODUCTO, FILTER = FILTRAR. Las fórmulas siguientes usan los nombres en inglés — el comportamiento es el mismo. En Excel en español los errores aparecen como: #N/A, #REF!, #¿NOMBRE?, #¡VALOR!, #¡DIV/0!.
Lo que aprenderás
- El modelo mental:
NOTes un interruptor,XORun detector de diferencias - Por qué
NOTtoma exactamente un argumento — y la trampa de la condición compuesta - Cuándo
NOTse gana su sitio, y cuándo es solo<>disfrazado - La ley de De Morgan: la reescritura que hace que
NOTvalga la pena XORcon dos entradas («difieren») frente a la sorpresa del conteo impar con 3+- La herramienta correcta para «exactamente uno de muchos» — y no es
XOR
El modelo mental: un interruptor y un detector de diferencias
NOT es un interruptor de la luz para un único veredicto. Entre lo que entre,
TRUE/FALSE, sale lo contrario — nada más. XOR es un detector de
diferencias: dale dos condiciones y responde «¿son estas dos distintas?».
=NOT(A2>10) ' TRUE cuando A2 NO es mayor que 10
=XOR(A2>10, B2>10) ' TRUE cuando exactamente uno de ellos es mayor que 10
Mantén esas dos imágenes separadas — un giro y una diferencia — y nunca las
confundirás con AND/OR, que combinan condiciones en vez de invertirlas o
compararlas.
NOT toma exactamente un argumento (la trampa de la condición compuesta)
NOT niega un único valor lógico. Este es el error con el que la gente choca
primero — intentar negar dos condiciones a la vez:
=NOT(A2>0, B2>0) ' MAL — demasiados argumentos
=NOT(AND(A2>0, B2>0)) ' BIEN — niega el veredicto combinado
Para invertir una condición compuesta primero la combinas (con
AND/OR) en un único veredicto, y luego
inviertes ese veredicto. NOT es el último eslabón de la cadena, nunca el
combinador.
Cuándo NOT se gana su sitio — y cuándo es solo <> disfrazado
Aquí está la parte honesta que la mayoría de las guías se salta: buena parte del
uso de NOT es puro ruido. NOT(A2="x") es exactamente A2<>"x", solo que más
largo y más difícil de leer:
=NOT(A2="Done") ' funciona, pero...
=A2<>"Done" ' ...esto es más claro
=NOT(A2>10) ' funciona, pero A2<=10 es más claro
Para una comparación simple, usa el operador inverso (<>, <=, >=) y
sáltate NOT por completo. NOT se gana su sitio en dos lugares: negar una
función que ya devuelve un booleano donde no hay operador que invertir —
NOT(ISBLANK(A2)), NOT(ISNUMBER(A2)) (mira las funciones
IS) — y negar una condición nombrada o
compuesta para que la fórmula se lea como una frase. Si puedes expresar la misma
prueba con un solo operador de comparación, esa es casi siempre la mejor opción.
La ley de De Morgan: el verdadero superpoder de NOT
La razón por la que NOT merece conocerse siquiera es que te deja reescribir
lógica enredada. La ley de De Morgan dice que negar un AND lo convierte en un
OR de las negaciones, y viceversa:
' "NOT (A y B a la vez)" es lo mismo que "(no A) OR (no B)"
=NOT(AND(A2="EU", B2>1000)) = =OR(A2<>"EU", B2<=1000)
' "NOT (A u B)" es lo mismo que "(no A) AND (no B)"
=NOT(OR(Status="Void", Status="Draft")) = =AND(Status<>"Void", Status<>"Draft")
Esto importa porque una forma es casi siempre más fácil de leer y de alimentar
a un IF o un
FILTER. Si te descubres escribiendo «conserva
todo lo que no esté cancelado y no sea borrador», la forma
AND(...<>...) de la derecha es más clara que un envoltorio NOT(OR(...)).
Conocer el intercambio te deja elegir la que se lea mejor en vez de quedarte
atrapado con la forma que escribiste primero.
XOR con dos entradas: «difieren»
Con exactamente dos condiciones, XOR es la prueba de «uno pero no ambos» —
TRUE cuando las entradas discrepan, FALSE cuando coinciden:
| A | B | OR |
XOR |
|---|---|---|---|
| FALSE | FALSE | FALSE | FALSE |
| TRUE | FALSE | TRUE | TRUE |
| FALSE | TRUE | TRUE | TRUE |
| TRUE | TRUE | TRUE | FALSE |
La única fila donde XOR y OR discrepan es la última: OR dice «sí, al menos
uno», XOR dice «no — ambos no está permitido». Ese es el caso de uso real —
banderas mutuamente excluyentes que nunca deberían estar activas las dos a la vez:
=IF(XOR(C2="Paid", D2="Refunded"), "OK", "Check: both or neither")
La sorpresa de XOR: 3+ entradas significa «conteo impar», no «exactamente uno»
Aquí está la trampa que atrapa a casi todo el mundo. Es natural leer XOR como
«exactamente uno es verdadero». Con dos entradas resulta ser correcto. Con tres
o más no lo es — XOR devuelve TRUE cuando hay un número impar de
entradas verdaderas:
=XOR(TRUE, TRUE, TRUE) ' -> TRUE (tres verdaderos = impar), NO "exactamente uno"
=XOR(TRUE, TRUE, FALSE) ' -> FALSE (dos verdaderos = par)
=XOR(TRUE, FALSE, FALSE) ' -> TRUE (un verdadero = impar)
XOR es en realidad una comprobación de paridad — cuenta cuántos verdaderos
hay e informa si ese conteo es impar. Eso es a veces exactamente lo que quieres
(bits de paridad, cadenas de conmutación), pero casi nunca es lo que alguien
quiere decir cuando afirma «exactamente una de estas casillas está marcada».
Para «exactamente uno de muchos», cuenta en su lugar
Cuando de verdad necesitas «uno y solo uno de estos es verdadero», deja de
usar XOR y cuenta los verdaderos directamente — luego comprueba que el conteo
sea igual a 1:
=(--(A2="Yes") + --(B2="Yes") + --(C2="Yes")) = 1 ' exactamente un Yes
=COUNTIF(B2:D2, "Yes") = 1 ' la misma idea sobre un rango
El -- convierte cada TRUE/FALSE en 1/0 (el mismo truco que impulsa a
SUMPRODUCT), así que la suma es
literalmente «cuántos son verdaderos». Compararla con 1 dice «exactamente uno»;
con >=1 dice «al menos uno» (eso es OR); con =0 dice «ninguno». Contar
escala a cualquier número de condiciones y nunca te sorprende con la paridad.
El criterio
- Invertir un único veredicto de una función que devuelve booleano →
NOT(p. ej.NOT(ISBLANK(...))). - Negar una comparación simple → usa
<>,<=,>=, noNOT. - Simplificar un
NOT(AND/OR(...))enredado → aplica la ley de De Morgan y quédate con el lado legible. - Dos banderas mutuamente excluyentes →
XOR. - «Exactamente uno de varios» → cuenta con
--/COUNTIF, nuncaXORcon 3+ entradas.
Cómo ayuda ExcelMaster
La lógica que aquí tropieza a la gente es sutil — «no ambos», «exactamente uno»,
«ninguno de estos» — y la función equivocada falla en silencio, devolviendo una
respuesta plausible pero errónea en los casos límite. ExcelMaster lee la
regla tal como la dices — marca las filas donde exactamente una casilla de
aprobación esté marcada — y escribe la forma que de verdad significa eso (un
conteo =1, no un XOR de paridad), o aplica la ley de De Morgan para convertir
una doble negación en algo que puedas leer dentro de seis meses.
Preguntas frecuentes
¿Qué hace la función NOT en Excel?
NOT invierte un único valor lógico: NOT(TRUE) es FALSE y NOT(FALSE) es
TRUE. Toma exactamente un argumento, así que para negar una condición compuesta
la envuelves: NOT(AND(A2>0, B2>0)).
¿Necesito NOT siquiera, o puedo usar <> en su lugar?
Para una comparación llana, <> (y <=, >=) es más claro: A2<>"x" gana a
NOT(A2="x"). Usa NOT sobre todo para invertir una función que devuelve un
booleano — NOT(ISBLANK(A2)) — o para negar un compuesto AND/OR entero.
¿Cuál es la diferencia entre OR y XOR en Excel?
Con dos entradas coinciden salvo cuando ambas son verdaderas: OR devuelve
TRUE, XOR devuelve FALSE. XOR es «uno pero no ambos». Usa OR para «al
menos uno», XOR para banderas mutuamente excluyentes.
¿Por qué XOR devuelve TRUE cuando tres condiciones son verdaderas?
Porque XOR comprueba paridad, no «exactamente uno». Devuelve TRUE para un
número impar de entradas TRUE, así que tres verdaderos (impar) da TRUE. Para
«exactamente uno de muchos», cuenta los verdaderos en su lugar:
COUNTIF(range, TRUE)=1.
¿Cómo compruebo que exactamente una de varias celdas está rellenada?
Cuenta y compara con 1: =COUNTIF(B2:D2, "Yes")=1, o
=(--(A2="Yes")+--(B2="Yes")+--(C2="Yes"))=1. No uses XOR para más de dos
condiciones — comprueba impar/par, no «exactamente uno».
Probado en
Probado en: Excel 365 (Windows 11) — última verificación: 04/07/2026.
Guías relacionadas: Excel AND y OR · Excel funciones IS · Excel IF · Excel SUMPRODUCT · Excel FILTER
