Tomar decisiones con IF
=IF(B2>=60, "Pass", "Fail") se lee como una oración: si la nota es al menos 60, escribe Pass; si no, escribe Fail.
Pruébalo primero: ¿aprueba un 60 justo?
Antes de cualquier regla, abre el laboratorio de abajo. Ana sacó 72, Ben 45, Chloe 60 justos y Dev 59.5. Escribe =IF(B2>=60,"Pass","Fail") en C2 y rellénala hacia abajo. Luego cambia >= por > en C4 y mira qué le pasa a Chloe. La fórmula se lee casi como una oración: si la nota es al menos 60, escribe Pass; si no, escribe Fail.
Arrastra para girar. Desplaza o pellizca para acercar.
Lo que acabas de escribir: una prueba y dos respuestas
IF recibe tres argumentos: una prueba lógica, el valor que devuelve cuando la prueba es TRUE y el valor que devuelve cuando es FALSE. Microsoft lo escribe como IF(logical_test, value_if_true, [value_if_false]) y la llama una de las funciones más populares de Excel. Sheets usa la misma forma. La prueba suele ser una comparación como B2>=60, una pequeña fórmula que da TRUE o FALSE, e IF elige una de sus dos respuestas a partir de eso. Para el 60 de Chloe, B4>=60 es TRUE y B4>60 es FALSE. Esa única diferencia es lo que acabas de ver.
| Comparación | Significado | Con B2 = 72 |
|---|---|---|
| B2=72 | igual a | TRUE |
| B2<>72 | distinto de | FALSE |
| B2>60 | mayor que | TRUE |
| B2<60 | menor que | FALSE |
| B2>=72 | al menos | TRUE |
| B2<=71 | como máximo | FALSE |
Las respuestas pueden ser texto, números o cálculos. El texto va entre comillas dobles, con una excepción que señala Microsoft: TRUE y FALSE, que Excel entiende por sí solos. Así, =IF(C2="Yes",1,2) devuelve un número, y =IF(C2>B2,C2-B2,0) devuelve cuánto se pasa una cifra del presupuesto, o 0 si no se pasa. Dos comillas sin nada en medio, "", devuelven un texto que parece vacío. Es la forma habitual de dejar una celda en blanco cuando no hay nada que informar.
Las comparaciones de texto no distinguen mayúsculas de minúsculas, así que "yes"="YES" es TRUE. Una celda vacía comparada con "" también da TRUE, y eso hace de =IF(A2="", "missing", A2*2) una protección práctica contra las celdas vacías. La ayuda de Google nombra el error más común con IF: poner las dos respuestas en el orden equivocado. Lee la fórmula en voz alta como «si esto, entonces aquello; si no, lo otro», y un cambio de orden suele saltar a la vista.
IF funciona bien a lo largo de una columna. Escríbela una vez para la primera fila, con una referencia relativa a la nota de esa fila, y rellena hacia abajo; cada estudiante obtiene un resultado. Como cada fila tiene su propia copia, puedes ordenar la lista o añadir estudiantes abajo y volver a rellenar. Si la prueba compara con un límite fijo guardado en una celda, como la nota para aprobar, esa referencia necesita signos de dólar, igual que la tasa de impuesto en la primera unidad de este curso.
Omitir el tercer argumento
Los dos programas marcan value_if_false como opcional. Si lo omites y la prueba resulta falsa, Excel devuelve el valor lógico FALSE, que queda raro en una columna de palabras. La lista de problemas comunes con IF de Microsoft también menciona un 0 en la celda cuando falta un argumento de respuesta. Escribe siempre las dos respuestas, aunque una sea solo "". Hay además una ventaja más discreta. Solo se calcula la rama elegida, así que =IF(B2=0, "none", A2/B2) nunca muestra #DIV/0!; la división solo se hace cuando B2 no es 0.
Un IF no tiene por qué terminar en palabras. =B2*IF(C2="member",0.9,1) cobra a los socios el 90% del precio y a los demás el precio completo. Aquí IF devuelve un número y la multiplicación lo usa como cualquier otro valor, así que una fórmula por fila sustituye a dos columnas separadas.
- Usar > cuando la regla dice «60 o más». =IF(B4>60,...) suspende una nota de 60 justos. «Al menos» es >=.
- Escribir =IF(A1>5,Yes,No) sin comillas. Yes y No son texto y necesitan comillas; sin ellas la fórmula muestra #NAME?. TRUE y FALSE son la excepción.
- Intercambiar las dos respuestas. =IF(B2>=60,"Fail","Pass") funciona sin ningún error y etiqueta todos los resultados al revés. La ayuda de Google dice que el orden es el error más común con IF.
- Omitir value_if_false. Cuando la prueba es falsa, Excel muestra FALSE en la celda. Escribe "" si quieres que parezca vacía.
- B2 contiene 72. ¿Qué devuelve =IF(B2>=60, "Pass", "Fail")?
- B5 contiene 59.5. ¿Qué devuelve =IF(B5>=60, "Pass", "Fail")?
- B4 contiene 60. ¿Qué devuelve =IF(B4>60, "Pass", "Fail")?
- B2 contiene 72. ¿Qué devuelve =IF(B2>70,B2-70,0)?
- B2 contiene 0. ¿Qué devuelve =IF(B2=0, "none", A2/B2)?
- none
- #DIV/0!
- 0
- FALSE
- En Excel, ¿qué devuelve =IF(5>9,"big")?
- FALSE
- big
- #N/A
- #VALUE!
- ¿A qué fórmula hay que añadirle comillas para que funcione?
- =IF(A1>5,Yes,No)
- =IF(A1>5,1,0)
- =IF(A1>5,TRUE,FALSE)
- =IF(A1>5,A1,0)
- ¿Qué devuelve ="yes"="YES"?
- TRUE
- FALSE
- #VALUE!
- yesYES
- A2 está vacía. ¿Qué devuelve =IF(A2="", "missing", A2*2)?
- Según la ayuda de Google, ¿cuál es el error más común con IF?
- Poner las respuestas verdadera y falsa en el orden equivocado
- Usar números como respuestas
- Usar >= en lugar de >
- Escribir IF en minúsculas
- IF(prueba, valor si es TRUE, valor si es FALSE).
- Comparaciones: = <> > < >= <=. Las comparaciones de texto no distinguen mayúsculas.
- Las respuestas de texto van entre comillas; TRUE y FALSE no las necesitan.
- Da siempre las dos respuestas; solo se calcula la elegida.
Fuentes de este curso (19)
- Microsoft Support, "Switch between relative, absolute, and mixed references" (support.microsoft.com/en-us/office/dfec08cd-ae65-4f56-839e-5f0d8d0baca9: $ before column and row, F4 to switch, copying two down and two right: $A$1 stays, A$1 to C$1, $A1 to $A3, A1 to C3)
- Microsoft Support, "AVERAGE function" (support.microsoft.com/en-us/office/047bac88-d466-426c-a32b-8f33eb960cf6: text, logical values and empty cells in a reference ignored, zeros included; 10, 7, 9, 27, 2 gives 11, with 5 gives 10; mean 5, median 4, mode 3 for 2 3 3 5 7 10)
- Microsoft Support, "COUNT function" (support.microsoft.com/en-us/office/a59cd7fc-b623-4d93-87a4-d23bf411294c: only numbers counted, dates count, errors and text do not)
- Microsoft Support, "ROUND function" (support.microsoft.com/en-us/office/c018c5d8-40fb-4053-90b1-b3e7f61a213c: num_digits required; 2.15 to 2.2, -1.475 to -1.48, 626.3 to 1000, 1.98 to 0, -50.55 to -100)
- Microsoft Support, "IF function" (support.microsoft.com/en-us/office/69aed7c9-4e8a-4755-a9bc-aa8bbff73be2: value_if_false optional, text in quotes except TRUE and FALSE, 0 and #NAME? problems)
- Microsoft Support, "VLOOKUP function" (support.microsoft.com/en-us/office/0bbc8083-26fe-4963-8ab8-93a18ad188a1: range_lookup TRUE by default, sorted first column, #N/A, #REF!, #VALUE!, absolute table range, wildcards with FALSE)
- Microsoft Support, "XLOOKUP function" (support.microsoft.com/en-us/office/b7fd680e-6d10-43e6-84f9-88eae8bf5929: not in Excel 2016 and Excel 2019, exact match by default)
- Microsoft Support, "How to correct a #VALUE! error" (support.microsoft.com/en-us/office/15e1b616-fbf2-4147-9c0b-0a11a20e409e: + and * may not calculate cells with text, use SUM instead, IFERROR hides all errors)
- Microsoft Support, "Excel specifications and limits" (15 digits, 64 nested levels, 255 arguments)
- Google Docs Editors Help, "VLOOKUP" (support.google.com/docs/answer/3093318: is_sorted TRUE by default, FALSE recommended, search down to a larger value, " Apple" and "Apple " differ, wildcards, IFNA, absolute range)
- Google Docs Editors Help, "XLOOKUP" (support.google.com/docs/answer/12405947)
- Google Docs Editors Help, "ROUND" (support.google.com/docs/answer/3093440: places optional, 0 by default, rounding by magnitude)
- Google Docs Editors Help, "IF" (support.google.com/docs/answer/3093364: order of the answers is the most common problem, IFS)
- Google Docs Editors Help, "AVERAGE" (support.google.com/docs/answer/3093615: text ignored, any number of arguments)
- Google Docs Editors Help, "COUNTA" (support.google.com/docs/answer/3093991: zero-length strings and spaces count)
- Google Docs Editors Help, "Keyboard shortcuts for Google Sheets" (support.google.com/docs/answer/181110: F4 and Fn+F4 while entering a formula, F4 as Redo)
- Pryor Learning and Exceljet (F4 cycle A1, $A$1, A$1, $A1; = comparison not case-sensitive)
- Ablebits (IF without value_if_false returns FALSE)
- Spreadsheet Class (Sheets circular dependency shows #REF!)
Fecha de consulta: 2026-10-19