SI
La función SI devuelve uno de dos valores posibles, en función de si una expresión especificada da como resultado un valor booleano VERDADERO o FALSO.
SI(si-expresión; si-verdadero; si-falso)
si-expresión: una expresión lógica. si-expresión puede contener cualquier cosa siempre que la expresión pueda ser evaluada como un valor booleano. Si la expresión da como resultado un número, un valor igual a 0 se interpreta como FALSO y cualquier otro valor se interpreta como VERDADERO.
si-verdadero: el valor devuelto si si-expresión es VERDADERO. si-verdadero puede incluir cualquier valor. Si se omite si-verdadero (se incluye la coma pero ningún valor) y si-expresión da como resultado VERDADERO, SI devolverá 0.
si falso: un argumento opcional que especifica el valor devuelto si si-expresión da como resultado FALSO. si-falso puede incluir cualquier valor. Si se omite si-falso (se incluye la coma pero ningún valor) y si-expresión da como resultado FALSO, SI devolverá 0. Si si-falso se omite por completo (no hay coma después de si-verdadero) y si-expresión da como resultado FALSO, SI devolverá FALSO.
Notas
Tanto el argumento si-verdadero como si-falso, o ambos, pueden incluir otras funciones SI (a menudo denominadas funciones SI anidadas).
Ejemplos |
---|
=SI(A5>=0;“No negativo”;“Negativo”) devuelve el texto “No negativo” si la celda A5 contiene un número superior o igual a cero o un valor no numérico. Si la celda A5 contiene un valor inferior a 0, la función devuelve “Negativo”. =SI(SI.ERROR(O(ES.PAR(B4+B5); ES.IMPAR(B4+B5)); FALSO); “Todos son números”; “No todos son números”) devuelve el texto “Todos son números” si las celdas B4 y B5 contienen números; de lo contrario, devuelve el texto “No todos son números”. Para ello, se realizan pruebas con objeto de ver si la suma de las dos celdas es par o impar. Si la celda no es un número, las funciones PAR y IMPAR devolverán un error y la función SI.ERROR devolverá FALSO; de lo contrario, devolverá VERDADERO, puesto que PAR o IMPAR es VERDADERO. Por lo tanto, si B4 o B5 no es un número o un valor booleano, la sentencia SI devolverá la expresión si-falso, “No todos son números”; de lo contrario, devolverá la expresión si-verdadero “Todos son números”. |
Ejemplos: Cómo evitar errores de división por cero |
---|
A veces no es posible construir una tabla de forma que se puedan evitar las divisiones por cero. Sin embargo, si se produce la división por cero, el resultado es un valor erróneo en la celda, lo que no suele ser el resultado deseado. Este ejemplo muestra tres métodos para evitar este error. Supongamos que la celda D2 y la E2 contienen un número cada una. Es posible que E2 contenga 0. Se quiere dividir D2 por E2, pero evitar el error de división por cero. Los tres siguientes métodos devolverán 0 si E2 es igual a 0; en caso contrario, devolverán el resultado de D2/E2. =SI(E2=0;0;D2/E2) funciona comprobando directamente la celda E2 para ver si es 0. =SI.ERROR(D2/E2;0) funciona devolviendo un 0 si se produce un error. La división por cero es un error. =SI(ESERROR(D2/E2);0;D2/E2) funciona haciendo una comprobación lógica para ver si D2/E2 es VERDADERO. |
Ejemplo utilizando REGEX |
---|
Supongamos que A1 contiene "juan@appleseed.com" =SI(A1 = REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"), "Contiene una dirección de correo", "No es una dirección de correo") devuelve "Contiene una dirección de correo". |