Menu

SI anidado en Excel: varias condiciones SI con ejemplos

=SI(B2>=90;"A";SI(B2>=80;"B";SI(B2>=70;"C";"F"))) pone un SI dentro de otro para elegir entre más de dos resultados. Aprende cómo se lee un SI anidado, por qué importa el orden de las condiciones y cuándo conviene SI.CONJUNTO o una tabla de búsqueda.

Todas las hojas de esta página están vivas: cambia un número o una fórmula y se recalculan.

Un SI anidado es un SI dentro de otro SI, y se usa cuando hay más de dos resultados posibles. =SI(B2>=90;"A";SI(B2>=80;"B";SI(B2>=70;"C";"F"))) da una A con 90 o más, una B de 80 a 89, una C de 70 a 79 y una F por debajo de 70. La función SI se llama IF en inglés, y la tabla muestra la fórmula en inglés; también acepta las fórmulas escritas en español, con punto y coma (o con comas, como en México).

Notas a partir de las puntuaciones
C2
ABC
1StudentScoreGrade
2Ana94A
3Ben81B
4Chloe70C
5Dan65F
6Eve88B
7Finn90A
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.En Excel en español: =SI(B2>=90;"A";SI(B2>=80;"B";SI(B2>=70;"C";"F")))

Haz clic en C2 y mira la barra de fórmulas: tres funciones SI y tres paréntesis de cierre al final. Cambia la puntuación de Dan en B5 a 75 y su nota pasa de F a C.

Cómo se lee un SI anidado

Excel lee la fórmula desde el principio y se detiene en la primera prueba que es VERDADERO:

=IF(B2>=90, "A",
   IF(B2>=80, "B",
      IF(B2>=70, "C",
         "F")))
  1. ¿La puntuación es 90 o más? Entonces A, y no se comprueba nada más.
  2. Si no, ¿es 80 o más? Entonces B. Esta prueba no necesita decir "y menor que 90", porque una puntuación de 90 o más nunca llega hasta aquí.
  3. Si no, ¿es 70 o más? Entonces C.
  4. Si no, F, el valor_si_falso del último SI.

Cada SI interior ocupa el lugar del valor_si_falso del anterior. Excel admite hasta 64 niveles, pero una fórmula con más de cuatro o cinco es difícil de revisar a simple vista. Excel acepta saltos de línea dentro de una fórmula, así que puedes distribuir una fórmula larga como esta en la barra de fórmulas: pulsa Alt+Enter (Windows) o Control+Opción+Retorno (Mac) antes de cada SI.

Por qué importa el orden de las condiciones

Como Excel se detiene en la primera prueba VERDADERO, con >= los umbrales deben ir del más alto al más bajo. La columna D tiene las mismas tres pruebas en el orden contrario:

Mismas pruebas, orden equivocado
D2
ABCD
1StudentScoreRight orderWrong order
2Ana94AC
3Ben81BC
4Chloe70CC
5Dan65FF
6Eve88BC
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.En Excel en español: =SI(B2>=70;"C";SI(B2>=80;"B";SI(B2>=90;"A";"F")))

En la columna D todos los que tienen 70 o más reciben una C: una puntuación de 94 pasa la primera prueba, B2>=70, y nunca se llega a las pruebas de B y A. Si prefieres empezar por el tramo más bajo, invierte los operadores: =SI(B2<70;"F";SI(B2<80;"C";SI(B2<90;"B";"A"))) da las mismas notas que la columna C.

SI anidado con texto

Las pruebas también pueden comparar texto. Aquí el costo de envío depende de la región, y toda región que no se nombra recibe el último valor:

Costo de envío por región
C2
ABC
1OrderRegionFee
21001North$5.00
31002South$7.00
41003West$9.00
51004East$6.00
61005Islands$9.00
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.En Excel en español: =SI(B2="North";5;SI(B2="South";7;SI(B2="East";6;9)))

West e Islands no cumplen ninguna de las tres pruebas y reciben el valor final, $9.00. Cuando todas las pruebas comparan la misma celda con un valor fijo, como aquí, CAMBIAR (SWITCH en inglés) escribe la misma regla nombrando cada región una sola vez: =CAMBIAR(B2;"North";5;"South";7;"East";6;9). Consulta la página de CAMBIAR.

SI anidado con Y

Un SI anidado puede combinar sus niveles con Y u O (AND y OR en inglés) cuando un tramo depende de dos celdas. Un vendedor con ventas de 2000 o más y al menos 3 años recibe el 10%, cualquier otro por encima de 2000 recibe el 5% y el resto, nada:

Tasa de comisión
D2
ABCD
1RepSalesYearsRate
2Ana2400410%
3Ben210015%
4Chloe150060%
5Dan3000310%
6Eve90020%
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.En Excel en español: =SI(Y(B2>=2000;C2>=3);10%;SI(B2>=2000;5%;0))

Ana y Dan llegan al 10%, Ben tiene las ventas pero no los años y recibe el 5%, y Chloe y Eve reciben 0%. Aquí también importa el orden: la prueba más estricta va primero.

SI.CONJUNTO: lo mismo sin anidar

En Excel 2019, Excel 2021 y Microsoft 365, SI.CONJUNTO (IFS en inglés) toma las pruebas y los resultados por parejas, sin SI interiores y con un solo paréntesis de cierre. VERDADERO como última prueba hace de "todo lo demás":

=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"F")

En Excel en español: =SI.CONJUNTO(B2>=90;"A";B2>=80;"B";B2>=70;"C";VERDADERO;"F"). Lee las condiciones en el mismo orden y se detiene en la primera VERDADERO, así que la regla del orden sigue valiendo. La página de SI.CONJUNTO lo explica, incluido el #N/A que devuelve cuando ninguna prueba se cumple. En Excel 2016 y anteriores SI.CONJUNTO no existe, y un archivo que la usa muestra ahí #¿NOMBRE? (#NAME? en inglés).

Práctica: una comisión con tres tramos

Comisión
C2
ABC
1RepSalesCommission
2Ana$6,200
3Ben$2,400
4Chloe$600
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.

Tu turno: En C2, paga el 10% de las ventas de B2 cuando sean 5000 o más, el 5% cuando sean 1000 o más, y 0 en los demás casos. La fórmula se copia hasta C4.

Una tabla de búsqueda en lugar de muchos SI

Cuando los tramos son números y hay más de tres o cuatro, guarda los umbrales en una tabla pequeña y búscalos. La tabla está ordenada del umbral más bajo al más alto, y la coincidencia aproximada (VERDADERO como último argumento) devuelve la fila del mayor umbral que no supera la puntuación:

Notas desde una tabla de tramos
C2
ABCDEF
1StudentScoreGradeMin scoreGrade
2Ana94A0F
3Ben81B70C
4Chloe70C80B
5Dan65F90A
6Eve88B
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.En Excel en español: =BUSCARV(B2;$E$2:$F$5;2;VERDADERO)

Los resultados coinciden con el SI anidado del principio de la página. En Excel en español la fórmula de C2 es =BUSCARV(B2;$E$2:$F$5;2;VERDADERO) (BUSCARV es VLOOKUP en inglés). Para mover el tramo B a 85, cambia E4 a 85: ninguna fórmula cambia y todas las notas se actualizan. Con BUSCARX (XLOOKUP en inglés) la misma búsqueda es =BUSCARX(B2;$E$2:$E$5;$F$2:$F$5;;-1), donde -1 significa "coincidencia exacta o el siguiente valor menor"; entonces la tabla no necesita estar ordenada.

Pruébalo: la tabla de tramos está lista, escribe la búsqueda.

Nota con BUSCARV
C2
ABCDEF
1StudentScoreGradeMin scoreGrade
2Ana860F
370C
480B
590A
Haz clic en una celda para ver su fórmula. Cambia un número o una fórmula y la hoja se recalcula.

Tu turno: En C2, devuelve la nota de la puntuación de B2 a partir de la tabla de tramos de E2:F5.

Preguntas frecuentes

¿Cómo se escriben varias funciones SI en Excel?

Pon el SI siguiente en el argumento valor_si_falso del anterior: =SI(B2>=90;"A";SI(B2>=80;"B";SI(B2>=70;"C";"F"))). Excel comprueba las condiciones de la primera a la última y se detiene en la primera que es VERDADERO.

¿Cuántas funciones SI se pueden anidar en Excel?

Hasta 64 niveles en Excel 2007 y posteriores. Mucho antes de ese límite, la fórmula se vuelve difícil de leer y de revisar; con más de tres o cuatro tramos, una tabla de búsqueda con BUSCARV aproximado o BUSCARX es más fácil de mantener.

¿Por qué mi SI anidado devuelve un resultado equivocado?

Casi siempre porque las condiciones están en el orden equivocado. Con pruebas >=, empieza por el umbral más alto: si B2>=70 va primero, una nota de 95 se detiene ahí y recibe el resultado del tramo de 70.

¿Qué puedo usar en lugar de un SI anidado en Excel?

SI.CONJUNTO en Excel 2019 y posteriores (=SI.CONJUNTO(B2>=90;"A";B2>=80;"B";VERDADERO;"F")), CAMBIAR cuando comparas un valor con valores fijos, y una tabla de búsqueda con =BUSCARV(B2;$E$2:$F$5;2;VERDADERO) para tramos numéricos.

Ilustración de los lenguajes de programación de Coddy

Aprende a programar con Coddy

COMENZAR