Tabla de contenido
La función SI de las Hojas de cálculo de Google es una de las funciones más fáciles de aprender.
En este tutorial, te invito a que veas más de cerca cómo funciona la función SI de Google Spreadsheet y qué ventajas obtendrás al utilizarla.
¿Qué es la función IF en Google Sheets?
Siempre que se utiliza la función IF, se crea un árbol de decisión en el que se sigue una determinada acción bajo una condición, y si esa condición no se cumple - sigue otra acción.
Para ello, la condición de la función debe tener el formato de la pregunta alternativa con sólo dos respuestas posibles: "sí" y "no".
Este es el aspecto que puede tener un árbol de decisión:
Así, la función IF permite formular una pregunta e indicar dos acciones alternativas en función de la respuesta recibida. Esta pregunta y las acciones alternativas se conocen como tres argumentos de la función.
Sintaxis de la función SI en Google Sheets
La sintaxis de la función IF y sus argumentos son los siguientes:
=IF(expresión_lógica, valor_si_verdadero, valor_si_falso)- expresión_lógica - (obligatorio) un valor o expresión lógica que se comprueba para ver si es TRUE o FALSE.
- value_if_true - (obligatorio) la operación que se realiza si la prueba es TRUE.
- value_if_false - (opcional) la operación que se realiza si la prueba es FALSE.
Exploremos los argumentos de nuestra función IF con más detalle.
El primer argumento representa una pregunta lógica. Google Sheets responde a esta pregunta con un "sí" o un "no", es decir, con un "verdadero" o un "falso".
¿Cómo formular correctamente la pregunta? Para ello, puedes escribir una expresión lógica utilizando símbolos tan útiles (u operadores de comparación) como "=", ">", "=", "<=", "". Intentemos formular juntos una pregunta de este tipo.
Utilización de la función IF
Supongamos que trabaja en una empresa que vende chocolate en varias regiones consumidoras con muchos clientes.
Este es el aspecto que pueden tener tus datos de ventas en Google Sheets:
Imagine que necesita separar las ventas realizadas en sus regiones locales de las realizadas en el extranjero. Para ello, debe añadir otro campo descriptivo para cada venta: el país en el que se realizó la venta. Dado que hay muchos datos, necesita que este campo descriptivo se cree automáticamente para cada entrada.
Y aquí es cuando entra en juego la función IF. Añadamos la columna "País" a la tabla de datos. La región "Oeste" representa las ventas locales (Nuestro país), mientras que el resto son las ventas procedentes del extranjero (Resto del mundo).
¿Cómo escribir la función correctamente?
Coloca el cursor en F2 para activar la celda y escribe el signo de igualdad (=). Google Sheets entenderá inmediatamente que vas a introducir una fórmula. Por eso, justo después de escribir la letra "i", te pedirá que elijas una función que empiece por esa misma letra. Y debes elegir "SI".
Después, todas tus acciones irán acompañadas también de avisos.
Para el primer argumento de la función IF, introduzca B2="Oeste" Al igual que con las demás funciones de Google Sheets, no es necesario introducir manualmente la dirección de la celda: basta con hacer clic con el ratón. A continuación, introduce la coma (,) y especifica el segundo argumento.
El segundo argumento es un valor que F2 devolverá si se cumple la condición. En este caso, será el texto "Nuestro país".
Y de nuevo, después de la coma, escriba el valor del 3er argumento. F2 devolverá este valor si no se cumple la condición: "Resto del mundo". No olvide terminar la introducción de la fórmula cerrando el paréntesis ")" y pulsando "Intro".
Tu fórmula completa debería tener este aspecto:
=IF(B2="Oeste", "Nuestro país", "Resto del mundo")
Si todo es correcto, F2 devolverá el texto "Nuestro país":
Ahora, todo lo que tienes que hacer es copiar esta función en la columna F.
Consejo. Hay una forma de procesar toda la columna con una fórmula. La función ARRAYFORMULA te ayudará a hacerlo. Utilizándola en la primera celda de la columna, puedes probar todas las celdas de abajo con la misma condición, y devolver el resultado correspondiente a cada fila al mismo tiempo:
=ARRAYFORMULA(IF(B2:B69="Oeste", "Nuestro país", "Resto del mundo"))
Examinemos las otras formas de trabajar con la función IF.
Función IF y valores de texto
El uso de la función IF con un texto ya se ha ilustrado en el ejemplo anterior.
Nota: si el texto se utiliza como argumento, debe ir entre comillas dobles.
Función IF y valores numéricos
Puedes utilizar números para los argumentos igual que hiciste con el texto.
Sin embargo, lo que es muy importante aquí es que la función IF permite no sólo rellenar las celdas con determinados números en función de las condiciones cumplidas, sino también calcular.
Por ejemplo, supongamos que ofrece a sus clientes varios descuentos en función del valor total de la compra. Si el total es superior a 200, el cliente obtiene un descuento del 10%.
Para ello, debe utilizar la columna G y denominarla "Descuento". A continuación, introduzca la función IF en G2, y el segundo argumento estará representado por la fórmula que calcula el descuento:
=IF(E2>200,E2*0.1,0)
SI espacios en blanco/no espacios en blanco
Hay casos en los que el resultado depende de si la celda está vacía o no. Hay dos formas de comprobarlo:
- Utilice la función ISBLANK.
Por ejemplo, la siguiente fórmula comprueba si las celdas de la columna E están vacías. En caso afirmativo, no se aplicará ningún descuento; en caso contrario, se aplicará un descuento del 5%:
=IF(ISBLANK(E2)=TRUE,0,0.05)
Nota. Si hay un cadena de longitud cero en una celda (devuelta por alguna fórmula), la función ISBLANK dará como resultado FALSE.
He aquí otra fórmula para comprobar si E2 está vacío:
=IF(ISBLANK(E2)2FALSE,0,0.05)
Puedes dar la vuelta a la fórmula y ver si las celdas no están en blanco:
=IF(ISBLANK(E2)=FALSE,0.05,0
=IF(ISBLANK(E2)TRUE,0.05,0)
- Utilice operadores de comparación estándar con un par de comillas dobles:
Nota: Este método tiene en cuenta cadenas de longitud cero (indicadas con comillas dobles) como celdas vacías.
=IF(E2="",0,0.05)
- comprobar si E2 está en blanco=IF(E2"",0,0,05)
- comprobar si E2 no está vacío.Consejo: De forma similar, utilice comillas dobles como argumento para devolver una celda vacía mediante la fórmula:
=IF(E2>200,E2*0,"")
SI en combinación con otras funciones
Como ya has aprendido, el texto, los números y las fórmulas pueden actuar como argumentos de la función SI. Sin embargo, otras funciones también pueden desempeñar ese papel. Veamos cómo funciona.
Google Sheets SI O
¿Recuerdas la primera forma de averiguar el país donde vendías chocolate? Comprobabas si el B2 contenía "West".
Sin embargo, puede construir la lógica al revés: haga una lista de todas las posibles regiones que pertenecen al "Resto del mundo" y compruebe si al menos uno de ellos La función OR del primer argumento le ayudará a hacerlo:
=OR(expresión_lógica1, [expresión_lógica2, ...])- expresión_lógica1 - (obligatorio) el primer valor lógico a comprobar.
- expresión_lógica2 - (opcional) el siguiente valor lógico a comprobar.
- etc.
Como puede ver, sólo tiene que introducir tantas expresiones lógicas como necesite comprobar y la función busca si una de ellas es verdadera.
Para aplicar estos conocimientos a la tabla con las ventas, mencione todas las regiones que pertenecen a las ventas en el extranjero, y las demás ventas pasarán a ser locales automáticamente:
=IF(OR(B2="Este",B2="Sur"), "Resto del mundo", "Nuestro país")
Google Sheets SI Y
La función AND es igual de sencilla. La única diferencia es que comprueba si todas las expresiones lógicas enumeradas son verdaderas:
=AND(expresión_lógica1, [expresión_lógica2, ...])Por ejemplo, necesita limitar la búsqueda a su ciudad y sabe que actualmente sólo se compran avellanas. Por tanto, debe tener en cuenta dos condiciones: región - "Oeste" y producto - "Avellana de chocolate":
=IF(AND(B2="Oeste",C2="Avellana de chocolate"), "Nuestro país", "Resto del mundo")
Fórmula IF anidada frente a función IFS para Google Sheets
También puede utilizar la propia función IF como argumento para la función IF mayor.
Supongamos que ha establecido unas condiciones de descuento más estrictas para sus clientes. Si la compra total es superior a 200 unidades, obtienen un descuento del 10%; si la compra total está entre 100 y 199, el descuento es del 5%. Si la compra total es inferior a 100, no hay descuento alguno.
La siguiente fórmula muestra cómo se verá la función en la celda G2:
=IF(E2>200,E2*0.1,IF(E2>100,E2*0.05,0))
Obsérvese que es otra función IF la que se utiliza como segundo argumento. En estos casos, el árbol de decisión es el siguiente:
Hagámoslo aún más divertido y compliquemos la tarea. Imagina que ofreces el precio con descuento sólo a una región: "Este".
Para hacerlo correctamente, añada la expresión lógica "AND" a nuestra función. La fórmula tendrá entonces el siguiente aspecto:
=IF(AND(B2="East",E2>200),E2*0.1,IF(AND(B2="East",E2>100),E2*0.05,0))
Como puede ver, el número de descuentos se ha reducido mucho, mientras que su importe permanece intacto.
También hay una forma más sencilla de escribir lo anterior gracias a la función IFS:
=IFS(condición1, valor1, [condición2, valor2, ...])- condición1 - (obligatorio) es la expresión lógica que desea comprobar.
- valor1 - (obligatorio) es el valor a devolver si la condición1 es verdadera.
- y luego sólo tienes que enumerar las condiciones con sus valores a devolver si son verdaderas.
Así es como se verá la fórmula anterior con IFS:
=IFS(AND(B2="East",E2>200),E2*0.1,AND(B2="East",E2>100),E2*0.05)
Consejo: Si no hay ninguna condición verdadera, la fórmula devolverá el error #N/A. Para evitarlo, escriba IFERROR en la fórmula:
=IFERROR(IFS(AND(B2="East",E2>200),E2*0.1,AND(B2="East",E2>100),E2*0.05),0)
SWITCH como alternativa a los FI múltiples
Hay una función más que puedes considerar en lugar del IF anidado: Google Sheets SWITCH.
Comprueba si su expresión corresponde a una lista de casos, uno por uno. Si es así, la función devuelve el valor correspondiente.
=SWITCH(expresión, caso1, valor1, [caso2, valor2, ...], [por defecto])- expresión es cualquier referencia de celda, o un rango de celdas, o incluso una expresión matemática real, o incluso un texto que le gustaría igualar a sus casos (o probar contra los criterios). Requerido.
- caso1 es tu primer criterio para comprobar la expresión. Obligatorio.
- valor1 es un registro que se devuelve si caso1 criterio es el mismo que su expresión. Requerido.
- caso2, valor2 repite tantas veces como criterios tengas que comprobar y valores a devolver. Opcional.
- por defecto también es completamente opcional. Úsalo para ver un registro específico si no se cumple ninguno de los casos. Yo recomendaría usarlo siempre para evitar errores cuando tu expresión no encuentra coincidencias entre todos los casos.
He aquí un par de ejemplos.
A compara tus celdas con un texto utilizar rangos como expresión:
=ARRAYFORMULA(SWITCH(B2:B69, "Oeste", "Nuestro país", "Resto del mundo"))
En esta fórmula, SWITCH comprueba qué registro hay en cada celda de la columna B. Si es Oeste la fórmula dice Nuestro país de lo contrario, Resto del mundo . ArrayFormula permite procesar toda la columna a la vez.
A trabajar con cálculos es mejor utilizar una expresión booleana:
=SWITCH(TRUE,$E2>200,$E2*0.1,AND($E2100),$E2*0.05,0)
Aquí SWITCH comprueba si el resultado de la ecuación es TRUE o FALSO Cuando TRUE (como si E2 es realmente mayor que 200 ), obtengo el resultado correspondiente. Si ninguno de los casos de la lista es TRUE (lo que significa que son FALSO ), la fórmula simplemente devuelve 0.
Nota: SWITCH no sabe cómo calcular todo el rango a la vez, por lo que no hay ARRAYFORMULA en este caso.
Sentencias IF basadas en un recuento
Una de las preguntas que nos hacen a menudo es cómo crear la fórmula IF que devolverá lo que necesites si la columna contiene o no contiene un determinado registro.
Por ejemplo, compruebe si el nombre de un cliente aparece más de una vez en una lista (columna A) y ponga la palabra correspondiente (sí/no) en una celda.
La solución es más sencilla de lo que crees. Tienes que introducir la función COUNTIF en tu IF:
=IF(COUNTIF($A$2:$A$20,$A2)>1, "sí", "no")
Haz que Google Sheets cree fórmulas IF por ti: complemento IF Formula Builder
Si estás cansado de estar pendiente de todos esos caracteres adicionales y de la sintaxis correcta en las fórmulas, hay otra solución disponible.
El complemento IF Formula Builder para Google Sheets ofrece una forma visual de crear sentencias IF. La herramienta se encargará de la sintaxis, las funciones adicionales y todos los caracteres necesarios por ti.
Todo lo que tienes que hacer es:
- Rellene los espacios en blanco con sus registros uno a uno. No hay tratamiento especial para fechas, horas, etc. Introdúzcalos como siempre y el complemento reconocerá el tipo de dato.
- seleccione los operadores de comparación necesarios de las listas desplegables sugeridas.
- si es necesario, añada varias expresiones lógicas en un clic: IF OR, IF AND, ELSE IF, THEN IF.
Como puede ver, cada expresión lógica ocupa su propia línea. Lo mismo ocurre con los resultados verdadero/falso. Esto reduce drásticamente el número de posibles confusiones sobre la fórmula.
A medida que vayas rellenando todo, la fórmula a utilizar crecerá en el área de previsualización de la parte superior de la ventana. A su izquierda, puedes seleccionar una celda de la hoja en la que te gustaría tener la fórmula.
Cuando estés listo, pega la fórmula en la celda que te interese haciendo clic en el botón Insertar fórmula de la parte inferior.
Visite el tutorial en línea de IF Formula Builder para ver todas las opciones descritas en detalle.
Espero que ahora no quede ninguna duda de que la función SI, aunque muy sencilla a primera vista, abre la puerta a muchas opciones para el tratamiento de datos en Google Sheets. Pero si aún tienes preguntas, no dudes en plantearlas en la sección de comentarios más abajo: ¡estaremos encantados de ayudarte!