Fórmula genérica
=REPT("message",logical test)
Resumen
Para mostrar un mensaje condicional, sin la función SI, puede usar la lógica booleana y la función REPT. En el ejemplo que se muestra, la fórmula en D5 (copiada) es:
=REPT("low",C5<100)
Si el valor de la columna C es menor que 100, la fórmula devuelve "bajo". De lo contrario, la fórmula devuelve una cadena vacía (""), que parece una celda en blanco.
Explicación
Esta fórmula utiliza lógica booleana para generar un mensaje condicional. Si el valor de la columna C es menor que 100, la fórmula devuelve "bajo". De lo contrario, la fórmula devuelve una cadena vacía ("").
La lógica booleana es una técnica para manejar valores VERDADERO y FALSO como 1 y 0. En la celda C5, la fórmula se evalúa así:
=REPT("low",C5<100) =REPT("low",TRUE) =REPT("low",1) ="low"
En otras palabras, si C5 <100, la salida es "baja" 1 vez. En la celda C6, la fórmula se evalúa así:
=REPT("low",C6<100) =REPT("low",FALSE) =REPT("low",0) =""
En otras palabras, si C6 <100 es FALSO, la salida "baja" cero veces.
Función IF alternativa
Los mensajes condicionales como este se manejan más comúnmente con la función SI. Con IF, la fórmula equivalente es:
=IF(C5<100,"low","")
Ambas fórmulas devuelven exactamente el mismo resultado, pero la versión REPT es un poco más simple.
Extendiendo la lógica
La lógica booleana se puede ampliar con operaciones matemáticas simples para manejar escenarios más complejos. Brevemente, la lógica Y se puede expresar con una multiplicación (*) O la lógica se puede expresar con una suma (+). Por ejemplo, para devolver "bajo" solo cuando (cuenta <100) Y (día = lunes) podemos usar lógica booleana como esta:
=REPT("low",(C5<100)*(B5="Monday"))
La fórmula SI equivalente es:
=IF(C5<100,IF(B5="Monday","low",""),"")
o, simplificando un poco con AND:
=IF(AND(C5<100,B5="Monday"),"low","")
Coaccionar VERDADERO y FALSO a 1 y cero
Cuando use lógica booleana, a veces necesitará forzar a Excel a coaccionar TRUE y FALSE a 1 y cero. Una forma sencilla de hacer esto es usar un doble negativo (-).