Ejemplos con funciones Si y Elegir

Hola jóvenes

Se que están interesados en más ejemplos de funciones complejas, por ello en esta entrada y la siguiente se analizan algunos ejemplos a fin de comprender los usos de la función SI y sus implicaciones generales.

En esta entrada comenzaremos con dos ejemplos simples en donde la comparación es por igualdad y se emplearán números como valores de comparación, por ello es posible solucionarlos tanto con la función SI() como con la función Elegir().


Para efectos de análisis, los ejemplos primero se resolverán con la función Elegir() y posteriormente usando la función SI(). Comencemos.

Primer ejemplo: 

Escriba una fórmula que permita mostrar el nombre de una flor y a quien vas a dársela a partir de la elección de un número del 1 al 3.

Para resolver el ejercicio: considere:
  • Tres nombres de flores, como: “Rosa”, “Clavel”, “Gardenia”
  •  Y respectivamente en tres personas a quien se la podríamos dar: “Mi mamá”, “Mi abuelita”, “Mi tía”. 
Vamos a pensar en trabajar con estos valores como estáticos (es decir, escritos directamente en la fórmula y no en referencias de celdas) esto para concentrarse en este momento en la sintaxis de la función.

Solución con la función Elegir ()

  • NOTA: (Es la fórmula idónea para resolver este tipo de problemas debido a que el valor contra el que se va a comparar es numérico entero y la comparación es por igualdad).

Ahora bien, se deberá contar con una celda en la cual se pueda elegir el número entero, para este caso se usará la celda C5.

En una celda cualquiera (en la misma hoja) puede escribir la fórmula para que muestre el nombre de la flor:
=ELEGIR(C5;"Rosa"; "clavel"; "Gardenia")

En otra celda (en la misma hoja) escriba la fórmula para que muestre la persona a la que se le va a entregar la flor:
=ELEGIR(C5;"Mi mama"; "Mi abuela"; "Mi tía")



Como puede verse, en este caso si se elige el valor 1, se mostrara como flor “Rosa” y la persona a la que se le va a entregar es “Mi mama, si se elige el valor 2, se mostrará como flor “Clavel” y la persona a la que se le va a entregar será “Mi abuelita”, y si por último se elige el valor 3 la flor es “Gardenia” y la persona a la que se le entregará es “Mi tía”. Ahora bien, si se escribe un valor distinto a 1, 2 o 3, lo que la fórmula devolverá es el Error: 502 que significa “Argumento no válido” lo que significa que no se ha contemplado un posible argumento para el valor indicado.
  • NOTA: La inserción de valores no válidos se puede solucionar trabajando con la validación de los valores permitidos al capturar valores. Algo que por el momento aún no se ha visto, pero que se explicará ampliamente después (en alguna de las siguientes entradas a publicar).
Ahora bien, si lo que se desea es tener la libertar de elegir entre que flor y que persona, lo que se tiene que hacer es tener dos celdas en las cuales se pueda capturar el valor numérico; veamos el ejemplo ahora considerando que para elegir el número de la flor se usara la celda C5, pero para elegir la persona el valor numérico se capturará en la celda D5, así se pueden escribir las siguientes formulas en cualquier otra celda:

para que muestre el nombre de la flor: =ELEGIR(C5;"Rosa"; "clavel"; "Gardenia")

para que muestre la persona: =ELEGIR(D5;"Mi mama"; "Mi abuela"; "Mi tía")


Solución empleando la función SI()

Trabajando el primer caso en el que solo se va a contar con una celda en la cual se pueda elegir el número entero, se usará la celda C5.

De esta forma se tiene que, para el caso de la flor

si elige 1 debe mostrar “Rosa”

si elige 2 debe mostrar “Clavel”

si elige 3 debe mostrar “Gardenia”


Analizando la condición, se tiene en este caso que es comparación por igualdad contra un valor numérico entero:

Para 1 equivale a la condición C5=1

Para 2 equivale a la condición C5=2

Para 3 equivale a la condición C5=3


Antes de continuar el análisis con la función si() cabe aclarar que en caso que se capture un valor distinto a 1, 2 o 3, el valor cae en cascada en lo contemplado para la última condición (en el caso de lo contrario, por ello si no se incluye ningún caso de “valor no valido” lo que terminaría mostrando sería “Gardenia” tanto para valor 3 como para cualquier otro valor no contemplado.

Recuerde que la sintaxis de la función SI() incluye: como primer argumento la condición, y que las condiciones solo devuelven dos posibles valores: verdadero o falso (valores de verdad), es decir, se cumple o no se cumple la condición, por ello la función:
  • como segundo argumento, pide indicar qué hacer si la condición se cumple
  •  como tercer argumento, permite indicar qué hacer si la condición no se cumple. 

Así que podemos describir las acciones a llevar a cabo, de la siguiente forma:

si C5=1 entonces mostrar “Rosa
de lo contrario (aquí se caen las otras tres opciones existentes: que sea los valores 2 o 3, o en su caso algún otro valor no contemplado, por ello implica otra condicionante mas)
     Si C5=2 entonces mostrar “Clavel(lo mejor es ordenar en secuencia lógica las comparaciones)
     de lo contrario (solo quedan dos opciones: que sea 3 o cualquier otro valor no contemplado)
         si C5=3 entonces mostrar “Gardenia
          de lo contrario  mostrar “valor no válido

Este análisis equivale a escribir la siguiente fórmula en alguna celda (de la misma hoja), incluyendo una secuencia de funciones Si() anidadas (cuide en cada una cerrar el paréntesis de la función donde corresponde, a fin de evitar errores de sintaxis):

= SI (C5=1; “Rosa”; SI (C5=2; “Clavel”; Si(C5=3; “Gardenia”; “Valor no válido)))

Como en el caso de la persona a la que se le va a entregar la flor también se tienen tres casos, el análisis a aplicar es exactamente el mismo, observe:

si elige 1 debe mostrar “Mi mamá”
si elige 2 debe mostrar “Mi abuelita”
si elige 3 debe mostrar “Mi tía”

De la misma forma, las acciones a llevar a cabo para mostrar la persona son las mismas que en el caso de la flor:

si C5=1 entonces mostrar “Mi mamá
de lo contrario (aquí se caen las otras tres opciones existentes: que sea los valores 2 o 3, o en su caso algún otro valor no contemplado, por ello implica otra condicionante mas)
     Si C5=2 entonces mostrar “Mi abuelita(lo mejor es ordenar en secuencia lógica las comparaciones)
     de lo contrario (solo quedan dos opciones: que sea 3 o cualquier otro valor no contemplado)
          si C5=3 entonces mostrar “Mi tía
          de lo contrario  mostrar “valor no válido

Por tanto, la formula (a escribir en alguna otra celda de la misma hoja), mantiene la misma secuencia de funciones Si() anidadas, solo se cambia el valor a mostrar:

= SI (C5=1; “Mi mamá”; SI (C5=2; “Mi abuelita”; Si(C5=3; “Mi tía”; “Valor no válido)))

Y tal como se mencionó en el ejemplo explicado para la función Elegir()si lo que se desea es tener la libertar de elegir entre que flor y que persona, se deben tener dos celdas en las cuales se pueda capturar el valor numérico; tómense como ejemplo las ya señaladas: celda C5 para escribir el número para la flor, y D5 para escribir el valor numérico para mostrar la persona a la que se le entregará, por lo tanto, como puede observar a continuación se pueden escribir las siguientes formulas:

para que muestre el nombre de la flor:

= SI (C5=1; “Rosa”; SI (C5=2; “Clavel”; Si(C5=3; “Gardenia”; “Valor no válido)))

para que muestre la persona:

= SI (D5=1; “Mi mamá”; SI (D5=2; “Mi abuelita”; Si(D5=3; “Mi tía”; “Valor no válido)))


Cabe aclarar que en caso de que la celda se encuentre validada y solo se permitan introducir valores entre 1 y 3, ya no es necesario incluir la tercera función SI(), de forma que la formula quedaría como se muestra a continuación:

para que muestre el nombre de la flor:  = SI (C5=1; “Rosa”; SI (C5=2; “Clavel”; “Gardenia”))

para que muestre la persona:  = SI (D5=1; “Mi mamá”; SI (D5=2; “Mi abuelita”; “Mi tía”))

Escriba en la hoja de cálculo las formulas explicadas y compruebe lo ya explicado.


Veamos un segundo ejemplo:

Elegir un número entre 1 y 8 para que muestre un color previamente capturado en el rango de celdas A10: A17:

Nuevamente se tiene comparación por igualdad, contra valor numérico entero, por ello lo más adecuado es darle solución con la función Elegir(), sin embargo para el ejemplo vamos a explicarlo también como quedaría la función SI().

En este caso no se manejarán valores estáticos introducidos en la formula, sino por el contrario, valores dinámicos colocados en ciertas celdas a las cuales se va a hacer referencia (los valores de los colores se encuentran en las celdas de la A10 a la A17. Recuerde que se le dice dinámico porque podemos cambiar los valores de las celdas en cualquier momento sin necesidad de cambiar lo escrito en la fórmula.

Se tomara a la celda E24 para escribir el valor numérico entre 1 y 8, y se considerará que la celda no está validada, principalmente para la solución que se dé con la función SI()

Solución con función Elegir()

La fórmula a capturar en cualquier celda elegida (en la misma hoja) es la siguiente:

=Elegir (E24, A10, A11, A12, A13, A14, A15, A16, A17)

Si en los valores en las celdas son los siguientes:

Tome en cuenta que si en la celda E24 se escribe un 3, lo que se mostrará será el valor de la celda A12, es decir, el valor “Rojo”, y si por el contrario se captura un 6 en E24, lo que devolverá la función es el valor almacenado en la celda A15, es decir, “Magenta”, y así respectivamente, de acuerdo a la posición que corresponda en la ubicación de la celda, mostrara el valor guardado en ella. Cabe aclarar que al escribir la función se respetó el orden de las celdas, escribiendo en la función las referencias de las celdas en el mismo el orden en el que están las celdas en la secuencia de valores.

Tenga en cuenta que sin alterar la forma en la que se escribió la función, si los valores guardados en las celdas cambian de posición, por ejemplo si se ordenan alfabéticamente, como se muestra la imagen siguiente:

entonces ahora los valores que devolverá la función se corresponderán con ese nuevo orden de los valores, es decir, en este caso, si en la celda E24 se escribe un 3, lo que se mostrará será el valor de la celda A12, es decir, el valor “Blanco”, si en la celda E24 se escribe un 6, lo que mostrará será el valor “Purpura”, porque ahora es el valor que está almacenado en la celda A15.

Así mismo, en la función Elegir() es posible colocar las referencias de las celdas (que no olvide que son las que tienen los valores) en el orden de su preferencia, por ejemplo, con el orden de valores en el rango A10:A17 como se muestra abajo:

En caso de que la formula se escriba como sigue:

=Elegir (E24, A14, A11, A13, A10, A15, A17, A16, A12) 

Cuando en la celda E24 se escribe un 3, lo que se mostrará será el valor de la celda A13, y lo que se mostrara será el valor “Verde”, y si en E24 se captura un 6, lo que devolverá la función es el valor almacenado en la celda A17, es decir, “Negro”, y así respectivamente, de acuerdo a la posición que corresponda mostrará el valor almacenado en la celda que se corresponda con la posición señalada por el índice de la función Elegir(), es decir, por lo señalado en el primer argumento (E24).


Como puede verse, al trabajar con referencias de celdas, se debe tener cuidado de qué es lo que se ha almacenado en dichas celdas, y no alterar arbitrariamente los valores, si no se quiere tener cambios en lo que refleje la función en cuestión.


Solución del segundo ejemplo con la función SI():

Tomando en cuenta que se colocan los valores en las celdas como sigue:

Si en E24 se escribe 1 (E24=1) entonces mostrará el contenido de la celda A10
De lo contrario (se tienen ocho opciones más: valores del 2 al 8 y otros valores no contemplados)
   Si E24 =2 mostrará lo guardado en A11
   De lo contrario (quedan siete opciones más a contemplar)
      Si E24=3 mostrará lo guardado en A12
      De lo contrario (quedan seis opciones más a contemplar)
         Si E24 =4 mostrará lo guardado en A13
         De lo contrario (quedan cinco opciones más a contemplar)
            Si E24=5 mostrará lo guardado en A14
            De lo contrario (quedan cuatro opciones más a contemplar)
               Si E24 =6 mostrará lo guardado en A15
               De lo contrario (quedan tres opciones más a contemplar)
                  Si E24=7 mostrará lo guardado en A16
                  De lo contrario (quedan solo dos opciones más a contemplar)
                     Si E24 =8 mostrará lo guardado en A17
                     De lo contrario
                        mostrará “valor no válido”

Por tanto, este análisis equivale a escribir la siguiente fórmula en alguna celda (en la misma hoja), incluyendo una secuencia de funciones Si() anidadas (no se olvide de cerrar según corresponda el paréntesis de cada función Si(), a fin de evitar errores de sintaxis):

=Si(E24=1; A10; Si(E24=2; A11; Si(E24=3; A12; Si(E24=4; A13; Si(E24=5; A14; Si(E24=6; A15; Si(E24=7; A16; Si(E24=8); A17; “valor no válido”))))))))

Parece complicado, pero si se esfuerzan por resolver una cuestión a la vez, y contemplar en caso la parte del argumento correspondiente (a verdadero o a falso) el escribir lo que corresponda al análisis previamente realizado, se darán cuenta que no es algo complicado crear funciones Si() anidadas, solo es cuestión de poner atención a los detalles, y evitar omitir cualquier parte de la función, que muchas veces es mejor volver a empezar la escritura de la función, en lugar de tratar de encontrar el error.


Puede hacer clic AQUI para descargar el contenido de la entrada.

Practiquen con estos ejercicios para que vayan relacionándose poco a poco la función SI() y comiencen a comprender cuando es más adecuado utilizar una función Elegir().

Saludos

M.C. Bertha López Azamar




P.D. Alumno UNPA, si ya leíste la entrada, pon la letra de tu grupo y las iniciales de tus apellidos primero y luego de tu nombre en un comentario de esta entrada.