SI
La función SI devuelve uno de dos valores posibles, dependiendo 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 devuelve 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 devuelve 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 devuelve FALSO.
Notas
Tanto el argumento si-verdadero como si-falso, o ambos, pueden incluir otras funciones SI (a menudo denominadas funciones SI anidadas).
Usar SI para hacer comparaciones simples |
---|
La siguiente tabla muestra una forma sencilla de mantener un registro de las calificaciones de los alumnos. |
A | B | C | D | E | M | |
---|---|---|---|---|---|---|
1 | Alumno | Calificación del examen 1 | Calificación del examen 2 | Calificación final | Letra de calificación | Resultado final |
2 | 1 | 56 | 59 | 59 | M | Reprobado |
3 | 2 | 75 | 84 | 84 | B | Aprobado |
4 | 3 | 100 | 93 | 100 | A | Aprobado |
Puedes hacer una comparación sencilla con SI utilizando estos datos. A continuación se muestran varias formas en las que se puede usar la función SI: |
Devolver un valor de texto según criterios: En esta fórmula, se utilizan los siguientes argumentos:
Esta fórmula asigna el resultado "Aprobado" si la calificación del examen 1 del alumno es mayor o igual a 60; de lo contrario, se devuelve el valor "Reprobado". |
Devolver un valor numérico según criterios: En esta fórmula, se utilizan los siguientes argumentos:
Esta fórmula calcula la calificación final como la mayor de dos calificaciones de examen, y se puede modificar fácilmente para mostrar el cálculo de otro alumno de la tabla anterior; para hacerlo, se deben cambiar las referencias de celda de modo que coincidan con las calificaciones del alumno correspondiente. |
Usar una función SI anidada para probar más condiciones: La fórmula anterior asigna el resultado "Aprobado" si al menos una de las calificaciones de examen del alumno es mayor o igual a 60. La fórmula anterior asigna una letra según la calificación final del alumno. Nota: con funciones SI anidadas, el orden de las comparaciones es importante porque la fórmula se detiene después de la primera declaración verdadera. Por ejemplo, si quisieras agregar una nueva condición a la fórmula de la letra de calificación "sin intento" si el alumno tiene una calificación de 0, necesitas agregarla como la primera condición. Si la agregas al final, se devolverá la letra "F" incluso si la calificación es 0 porque ya se habrá evaluado como si fuera menor que 60. Es también por este motivo que no se necesita si-expresión para la letra de calificación "A”; si la calificación del alumno no es "B", significa que tampoco era ninguna otra letra y debe ser "A". |
Probar un ejemplo |
---|
Para ver cómo se usa la función SUMA en una hoja de cálculo de Numbers, crea una nueva hoja de cálculo con la plantilla "Libro de calificaciones". Quita un nombre de la tabla "Vista general de la clase" y observa cómo al hacerlo cambia el valor de la columna "Calif. final". Explora la función que se utiliza en la fila "Calif. final". |
Usar SI con otras funciones |
---|
La siguiente fórmula funciona con ESBLANCO para determinar si una celda está en blanco. En esta fórmula, se utilizan los siguientes argumentos:
Para hacer pruebas más complejas, también puedes combinar SI con Y, O y NO. |
Hacer más con SI.CONJUNTO |
---|
La función SI.CONJUNTO se puede usar para evaluar una serie de expresiones y devolver un valor según la primera condición que sea verdadera, y reemplaza varias declaraciones SI anidadas. |
Ejemplos adicionales |
---|
=SI(A5>=0,"No negativo","Negativo") devuelve el texto "No negativo" si la celda A5 contiene un número superior o igual a 0 o un valor no numérico. Si la celda A5 contiene un valor inferior a 0, la función devuelve "Negativo". =IF(A5<>0, "No-cero", "Cero") devuelve el texto "No-cero" si la celda A5 contiene un número que no es 0. Si la celda A5 contiene un 0, la función devuelve "Cero". =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 devuelven un error y la función SI.ERROR devuelve FALSO; de lo contrario, devuelve 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 devuelve la expresión si-falso, "No todos son números", de lo contrario, devuelve la expresión si-verdadero "Todos son números". |
Ejemplos: cómo evitar errores de división entre 0 |
---|
A veces no es posible construir una tabla de forma que se puedan evitar las divisiones entre 0. Sin embargo, si se produce la división entre 0, 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 entre 0. Los tres siguientes métodos devuelven 0 si E2 es igual a 0; en caso contrario, devuelven el resultado de D2/E2. =SI(E2=0,0,D2/E2) funciona revisando 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 entre 0 es un error. =SI(ESERROR(D2/E2),0,D2/E2) funciona haciendo una revisión lógica para ver si D2/E2 es VERDADERO. |
Ejemplo que usa REGEX |
---|
Digamos que A1 contiene "marina@ejemplo.com" =SI(A1 = REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"), "Contiene correo", "No hay correo") devuelve "Contiene correo". |