Lógica y control de errores

Y, O y NO en Excel: combinar condiciones en una sola fórmula

Combinan varias pruebas VERDADERO/FALSO en un único VERDADERO o FALSO.

SI admite una condición. Estas tres permiten que esa condición sean varias. Y devuelve VERDADERO solo cuando todas las pruebas que contiene se cumplen; O devuelve VERDADERO cuando se cumple al menos una; NO invierte lo que reciba.

Por sí solas devuelven un VERDADERO o FALSO pelado, útil de vez en cuando en una columna auxiliar y más a menudo un paso intermedio. Su sitio real es el primer argumento de SI: =SI(Y(B2>=70; C2>=0,8); "Apto"; "Revisar") se lee como una frase, mientras que el SI anidado equivalente se lee como un acertijo.

También importan en el formato condicional, donde una regla toma una sola fórmula que devuelve VERDADERO o FALSO. Cualquier regla que dependa de dos cosas a la vez lleva debajo una Y o una O.

Sintaxis

=Y(valor_lógico1; [valor_lógico2]; …)   =O(valor_lógico1; …)   =NO(valor_lógico)

Argumentos

valor_lógico1; …
Obligatorio
Condiciones que comprobar, hasta 255. Cada una debe evaluarse como VERDADERO o FALSO, normalmente una comparación.
valor_lógico
Obligatorio
Solo en NO, y toma exactamente una condición que invertir.

Los datos de ejemplo

Encabezados en la fila 1, datos en A2:D5.

ABCD
1AlumnoNotaAsistenciaCurso
2Alicia Moreau820.96Finanzas
3Bruno Santos540.71Marketing
4Chen Wei910.88Finanzas
5Dana Okafor670.62Operaciones

Ejemplos resueltos

=Y(B2>=70; C2>=0,8)

Resultado: VERDADERO

Ambas condiciones se cumplen con Alicia: 82 puntos y un 96 % de asistencia.

=O(B3>=70; C3>=0,8)

Resultado: FALSO

Con Bruno no se cumple ninguna, así que falla incluso la permisiva O.

=SI(Y(B4>=70; C4>=0,8); "Apto"; "Revisar")

Resultado: Apto

La forma de cada día. Chen supera los dos listones, así que se ejecuta la rama verdadera.

=SI(NO(D5="Finanzas"); "Otra facultad"; "Finanzas")

Resultado: Otra facultad

NO invierte una prueba. Aquí queda más claro escrito como D5<>"Finanzas", cosa que suele pasar con NO.

Ahora practícala

Leer sobre una fórmula no es lo mismo que escribirla. Abre el ejercicio de esta función y escríbela en una hoja real: recibirás comentarios inmediatos sobre qué celda está mal y por qué.

Abrir el ejercicio: Función Y

Errores habituales y cómo resolverlos

Devuelve siempre VERDADERO

Por qué ocurre: Uno de los argumentos no es una comparación. Y(A2; B2) trata cualquier número distinto de cero como VERDADERO en lugar de comprobar nada.

Cómo resolverlo: Haz que todos los argumentos sean comparaciones explícitas: Y(A2>0; B2="Norte").

#¡VALOR!

Por qué ocurre: Un argumento es texto que no se puede leer como condición.

Cómo resolverlo: Busca una comilla suelta o un operador que falte dentro de alguna de las pruebas.

La celda muestra VERDADERO en vez de la respuesta

Por qué ocurre: La Y se usó por su cuenta cuando debía ir dentro de un SI.

Cómo resolverlo: Envuélvela: =SI(Y(...); "Sí"; "No").

La regla de formato condicional no se activa nunca

Por qué ocurre: Las referencias absolutas y relativas están mezcladas, así que todas las filas comprueban la misma celda.

Cómo resolverlo: Escribe la regla para la celda superior izquierda del rango y fija solo las columnas que no deban moverse.

Consejos que conviene saber

  • Y y O se anidan entre sí: =O(Y(a; b); Y(c; d)) expresa «o estas dos o esas otras dos».
  • En contextos matriciales la multiplicación es Y y la suma es O: eso es lo que usan FILTRAR y SUMAPRODUCTO, porque Y reduce una matriz a un solo valor.
  • NO(x=y) casi siempre se escribe mejor como x<>y.
  • XO devuelve VERDADERO cuando se cumple un número impar de condiciones, que es el caso de «una u otra, pero no ambas».

Preguntas frecuentes

¿Cómo compruebo dos condiciones en un mismo SI?

Pon Y dentro: =SI(Y(B2>=70; C2>=0,8); "Apto"; "Revisar"). Usa O en la misma posición cuando baste con que se cumpla una. Es más claro que anidar un segundo SI y se comporta igual.

¿Por qué Y no funciona dentro de FILTRAR?

Y reduce toda una matriz a un único VERDADERO o FALSO, que no es lo que FILTRAR necesita: quiere un resultado por fila. Multiplica las condiciones: (a)*(b) para Y y (a)+(b) para O.

¿Cuántas condiciones admite Y?

Hasta 255, aunque una fórmula con más de tres o cuatro suele indicar que la lógica debería estar en una tabla de búsqueda y no en una sola celda.

Funciones relacionadas

Guías que la usan

Lecturas más largas donde esta función hace trabajo real en una hoja real.