Qué saber
- La función SI se utiliza para realizar una prueba lógica, es decir, si algo es cierto o no.
- La sintaxis y los argumentos de la función SI son =SI(prueba_lógica, valor_si_verdadero, [valor_si_falso]).
- Por ejemplo =IF(A2>A3, "Más grande", "Más pequeño").
Este artículo explica cómo usar la función IF para realizar una prueba lógica en todas las versiones de Excel, incluidos Excel 2019 y Microsoft 365. Se describen varios ejemplos.
¿Qué es la función SI?
La función SI en Excel se usa para realizar una prueba lógica. Una fórmula que utiliza esta función también se denomina instrucción IF o instrucción if/then.
Todas las fórmulas que usan esta función pueden tener uno de dos resultados. La forma en que funciona, como veremos en los ejemplos a continuación, es que la fórmula está configurada para probar si algo es cierto. Si es cierto, pasa una cosa, pero si es falso, pasa otra cosa.
La función SI es una de varias funciones lógicas que puede usar en Excel. Otros incluyen AND, IFERROR, IFS, NOT y OR.
Sintaxis y argumentos de la función IF
Cada fórmula que usa la función SI tiene algunas partes:
=SI(prueba_lógica, valor_si_verdadero, [valor_si_falso])
- logical_test: La condición que está probando. Es obligatorio.
- value_if_true: ¿Qué debería suceder si logical_test es verdadero? Es obligatorio.
- value_if_false: ¿Qué debería suceder si logical_test es falso? Es opcional.
Escribir una declaración IF de Excel es fácil si lo lee de manera un poco diferente: si la primera parte es verdadera, entonces haga esto. Si la primera parte es falsa, haz lo otro en su lugar.
Ten en cuenta estas reglas:
- Excel devuelve FALSO si prueba_lógica es falsa y se omite valor_si_falso.
- Para devolver texto como valor_si_verdadero o valor_si_falso, debe estar entre comillas, con la excepción de las palabras VERDADERO y FALSO.
- La función IF no distingue entre mayúsculas y minúsculas.
- Excel 2010 y posteriores permiten que existan hasta 64 declaraciones IF dentro de la misma fórmula. Las versiones anteriores de Excel están limitadas a siete.
Ejemplos de funciones IF
Estas son algunas de las diferentes formas en que puede usar fórmulas IF en Excel:
Escribir texto si la afirmación es verdadera
=SI(A2>A3, "Más grande", "Más pequeño")
Este es un ejemplo realmente básico de una instrucción IF en Excel. La prueba es para ver si A2 es más grande que A3. Si es así, escriba Más grande, de lo contrario escriba Más pequeño.
Haz matemáticas si la afirmación es verdadera
=SI(A2>A3, A2-A3)
Esta declaración IF está escrita de manera un poco diferente. En lugar de que el resultado value_if_true sea una palabra, se resta un valor de otro. Entonces, si A2 es de hecho más grande que A3, la diferencia será el resultado. Si no es cierto, dado que hemos omitido la parte valor_si_falso, Excel devuelve FALSO.
Pruebe el enunciado con matemáticas
=SI(A2/A3=5, A2/A3, "")
Otra forma de escribir una declaración IF es realizar un cálculo dentro de la sección logical_test. La condición IF aquí es A2/A3=5. Si eso es cierto, entonces hacemos el cálculo A2/A3. Si no es igual a 5, queremos que el resultado sea nada, por lo que usamos comillas dobles.
Comprobar si una fecha es hoy
=SI(A2=HOY(), "Esto es hoy", "")
Se pueden usar otras funciones de Excel dentro de una instrucción IF. En este ejemplo, estamos usando la función HOY para verificar si A2 es la fecha de hoy. Si es así, la fórmula escribe Esto es hoy, de lo contrario no se escribe nada.
Usando AND con la fórmula IF
=SI(E2<=HOY(), "Ahora", "Pronto")
=SI(Y(F2="Ahora", D2>=(B2-C2)), "Sí", "No")
Este ejemplo de la función SI es un poco más complicado. La idea aquí es ver si un artículo que debemos dinero está vencido, y si lo está, estamos viendo si esa cantidad está o no en nuestro presupuesto para que podamos pagarla. Si ambas declaraciones son verdaderas, podemos ver en la Columna G si es hora de pagarlo.
IF(E2<=HOY(), "Ahora", "Pronto") está en la columna Urgencia. Nos dice si el artículo está vencido o si vence hoy comparando la fecha de vencimiento con la fecha actual. Si la fecha de vencimiento es hoy o en el pasado, ahora se escribe en la columna F, de lo contrario escribimos pronto.
La segunda declaración IF todavía está estructurada como una declaración IF aunque se use AND en ella. La parte en negrita aquí es donde se encuentra la función AND, y dado que está dentro del primer conjunto de comas, es lo que estamos usando como prueba_lógica:
=SI(Y(F2="Ahora", D2>=(B2-C2)), "Sí", "No")
Aquí está escrito de manera diferente para mostrar que es como otras sentencias IF:
=SI(prueba esta función Y, escribe Sí si es cierto, o escribe Nosi es falso)
Dentro de la función AND hay dos sentencias IF:
- F2="Ahora" es parte de las fórmulas de la Columna G. Comprueba si Ahora está en F2.
- D2>=(B2-C2) tiene dos partes: primero realiza el cálculo B2-C2 para ver cuánto nos queda por pagar en el artículo, y luego comprueba el presupuesto disponible en D2 para ver si tenemos el dinero para pagarlo.
Entonces, si debemos dinero ahora y tenemos los fondos para pagarlo, se nos dice que sí, es hora de pagar el artículo.
Ejemplos de sentencias IF anidadas
Instrucciones IF anidadas es lo que se denomina cuando se incluye más de una instrucción IF en la fórmula. La configuración es casi idéntica, pero en lugar de cerrar el paréntesis al final del primer conjunto, ponemos una coma y escribimos otra declaración.
Dos sentencias IF en una fórmula
=SI(B2="F", "Clase A", SI(B2="M", "Clase B"))
Este primer ejemplo se usa para categorizar a los estudiantes por su género, donde a las mujeres se les asigna la Clase A y a los hombres la Clase B. La fórmula verifica F y M en B2 y luego escribe Clase A o Clase B dependiendo de la declaración eso es cierto.
La cantidad de paréntesis que necesita al final de una fórmula con funciones SI anidadas es la misma cantidad de veces que se escribe SI. En nuestro ejemplo, SI se escribe dos veces, por lo que necesitamos dos paréntesis al final.
Tres sentencias IF en una fórmula
=SI(A2=HOY(), "Esto es hoy", SI(A2HOY(), "Fecha futura")))
Este es un ejemplo de una fórmula con varias instrucciones IF. Es idéntico al ejemplo de HOY anterior pero con una prueba lógica más:
- El primer grupo comprueba si A2 es la fecha de hoy y devuelve Esto es hoy si lo es.
- La segunda prueba si hoy es mayor que A2 para determinar si A2 es una fecha anterior y devuelve la fecha anterior si lo es.
- Finalmente, hay una prueba para ver si la fecha de hoy es menor que la fecha en A2, y la fórmula devuelve la fecha futura si lo es.
Copiar precio si las declaraciones son falsas
=SI(C2="Factura", "", SI(C2="Comida", "", B2))
En este ejemplo final de fórmula IF anidada, necesitamos identificar rápidamente el monto total de todas las compras que no pertenecen a una determinada categoría. Estamos sumando todas nuestras compras innecesarias, y con una larga lista, esta es la mejor manera de hacerlo. Hemos determinado que cualquier descripción de artículo que diga Factura o Comida es importante, por lo que el precio, en B2, debe mostrarse para todos los demás artículos.
Esto es lo que está pasando:
- C2="Bill", "": Si C2 dice Bill, deja la celda en blanco.
- C2="Comida", "": Si C2 dice Comida, deja la celda en blanco.
- B2: Si alguna de estas afirmaciones es falsa, escribe lo que hay en B2.
Lo que nos deja esta fórmula es una lista de precios que luego podemos sumar con la función SUMA para evaluar rápidamente cuánto dinero se gastó en artículos que no necesitábamos.
Una forma más fácil de escribir sentencias IF anidadas
A medida que construye más y más en la fórmula, puede volverse rápidamente inmanejable y difícil de editar más adelante. Una forma de facilitar el trabajo con las declaraciones IF anidadas es poner un s alto de línea después de cada declaración, así:
=
IF(A2=HOY(), "Esto es hoy",
IF(A2<HOY(), "Fecha anterior",
IF(A2IF(A2>TODAY(), "Fecha futura")))
Para hacer esto en Excel, necesitamos editar desde la barra de fórmulas:
- Seleccione la barra de fórmulas en la parte superior de Excel.
- Coloque el mouse debajo del espacio de texto hasta que el cursor cambie a una flecha de dos lados y luego haga clic y arrastre el cuadro hacia abajo para proporcionar más espacio de trabajo.
- Coloque el cursor después del signo igual y presione Alt+Enter (Windows) o Ctrl+Option+Enter (Mac). Esto coloca el resto de la fórmula en una nueva línea.
-
Repita el paso 3 antes de cada declaración IF para que cada instancia se coloque en su propia línea.