He visto muy pocas veces que esta función sea utilizada, y casi nunca en todo su potencial. Digamos que podemos catalogar a la función ELEGIR(indice; valor1; valor2; valorN) como una de las "poco populares" de Excel. Pero no por ello vamos a dejar de verla, mas aún teniendo en cuenta la gran ayuda que puede brindar en nuestros proyectos, facilitándonos el trabajo en gran medida.
Repasemos la sintaxis:
ELEGIR(indice; valor1; [valor2]; [valorN])
[+/-] Ver el resto / OcultarEsto no es complicado en lo absoluto: como primer argumento tenemos un índice y luego una serie de valores, opcionales (por eso están encerrados entre corchetes) a partir del segundo. ¿Como funciona en su concepción mas básica? Así:
=ELEGIR(1; "enero"; "febrero"; "marzo"; "abril")
El resultado será: enero, por que eligió el primer elemento (indice 1) de la serie de elementos que definimos (de enero hasta abril), todos ellos separados por punto y coma (o coma solamente, dependiendo de la configuración regional del equipo).
Si hago:
=ELEGIR(3; "enero"; "febrero"; "marzo"; "abril")
el resultado será: marzo, ya que ocupa el tercer lugar en la lista de elementos.
Ya podemos ir infiriendo que: pasamos una matriz de datos (en este caso, meses) y mediante el primer argumento de la función, que actúa como índice de esa matriz de elementos, solicitamos a Excel que nos devuelva el valor que se encuentra en esa ubicación de la matriz.
Con lo visto hasta ahora es factible, por ejemplo, solicitarle al usuario el número de mes y devolver su nombre, evitando la utilización de BUSCARV() u otras similares:
En B2 coloco la función. El primer argumento (numero de mes) lo referencio a la celda A1, en D1:D6 coloco los meses que necesito:
mucho mas sencillo que otras opciones disponibles (indice(), buscarv(), coincidir(), etc, etc)
el usuario ingresó el valor 2 en A1 y la función devolvió el segundo elemento de la lista de valores.
Muy lindo. Práctico.... pero poco. Lo que no aclaré hasta este momento, para primero "entrar en calor", es que esos "valor1, valor2, valor3, valorN", pueden alcanzar hasta 254 posiciones... y también pueden contener absolutamente cualquier cosa: texto, números, funciones, valores lógicos, etc, etc, etc.
Y no es un dato menor, ya que allí reside la verdadera potencia de esta función.
Sigamos. En muchos proyectos necesitaremos que nuestras fórmulas "tomen decisiones" en base al valor que exista en una determinada celda. Estamos muy acostumbrados a hacer uso de SI(condición; condición verdadera; condición falsa); la facilidad de la sintaxis mas la posibilidad de anidamiento hacen que esto se convierta en una práctica común. Pero si las veces que anidamos SI() alcanzan las 15 o 20, verán como esto se tornará en algo engorroso a la hora de mantener y modificar nuestros proyectos. Conozco a pocas personas contentas con lidiar sobre funciones con 10 ó 20 niveles de anidamiento.
ELEGIR() nos permitirá "anidar" (por llamarlo de alguna forma) hasta 254 funciones o acciones a tomar, de manera mucho mas sencilla.
Quizás el ejemplo que utilice a continuación pueda ser tildado de "bizarro"... pero mezclo cualquier cosa para que observen a simple vista todo lo que podemos hacer.
En A1 nuestros usuarios ingresarán un valor, mismo que utilizaremos como primer argumento de ELEGIR(), y así saber que opción o alternativa utilizaremos. En B2 pondremos la función y, por ende, el resultado de la misma, que estará ligado al primer argumento (indice, en A1)
No entraré en detalles sobre la hoja de cálculos que armé, dado que al final del post dejo el link al archivo. Solo les muestro una imagen:
No entraré en detalles sobre la hoja de cálculos que armé, dado que al final del post dejo el link al archivo. Solo les muestro una imagen:
en A8:A15 le brindo al usuario las opciones disponibles, para que las ingrese en A1. En A2 se encuentra ELEGIR(), que devolverá los resultados en base al índice.
La función en A2 es:
=ELEGIR(A1;SUMA(C1:C5);PROMEDIO(C1:C5);MAX(C1:C5);MIN(C1:C5);ELEGIR(MES(AHORA());E1;E2;E3;E4;E5;E6;E7;E8;E9;E10;E11;E12);VERDADERO;FALSO;"hola, que tal")
Si, en principio parece complicada, pero en realidad es muy sencilla. Separemos los argumentos, o mejor dicho, los resaltaremos con distintos colores:
=ELEGIR(A1;SUMA(C1:C5);PROMEDIO(C1:C5);MAX(C1:C5);MIN(C1:C5);ELEGIR(MES(AHORA());E1;E2;E3;E4;E5;E6;E7;E8;E9;E10;E11;E12);VERDADERO;FALSO;"hola, que tal")
Como dije, el primer argumento es el índice, mismo que ingresa el usuario en A1. Sobre la base de dicho índice, devolveremos distintos valores... y los incluí a casi todos: números, textos, valores lógicos, funciones.
Tenemos, en este ejemplo, hasta 8 índices para ingresar, de acuerdo a la tabla de la imagen anterior. Dependiendo de ese valor obtendremos distintos resultados: sumas, promedios, verdadero, un mensaje de saludo, etc, etc. ¿Se entiende bien la gran ventaja de usar ELEGIR() en nuestros trabajos?
Vean el 5 argumento: ELEGIR(MES(AHORA());E1;E2;E3;E4;E5;E6;E7;E8;E9;E10;E11;E12). Estoy anidando un ELEGIR() dentro de otro. Si el usuario ingresa 5 en A1, Excel hará lo siguiente:
1) primero calculará el mes de la fecha que tiene nuestra PC y lo pondrá como primer argumento (indice)
2) seleccionará el mes respectivo de la lista de meses que le pasamos en el resto de los argumentos.
Este post lo estoy levantando el 6 de abril de 2011, es decir, el mes 4. Y en la siguiente imagen les muestro el resultado de ingresar 5 en A1:
=ELEGIR(A1;SUMA(C1:C5);PROMEDIO(C1:C5);MAX(C1:C5);MIN(C1:C5);ELEGIR(MES(AHORA());E1;E2;E3;E4;E5;E6;E7;E8;E9;E10;E11;E12);VERDADERO;FALSO;"hola, que tal")
Si, en principio parece complicada, pero en realidad es muy sencilla. Separemos los argumentos, o mejor dicho, los resaltaremos con distintos colores:
=ELEGIR(A1;SUMA(C1:C5);PROMEDIO(C1:C5);MAX(C1:C5);MIN(C1:C5);ELEGIR(MES(AHORA());E1;E2;E3;E4;E5;E6;E7;E8;E9;E10;E11;E12);VERDADERO;FALSO;"hola, que tal")
Como dije, el primer argumento es el índice, mismo que ingresa el usuario en A1. Sobre la base de dicho índice, devolveremos distintos valores... y los incluí a casi todos: números, textos, valores lógicos, funciones.
Tenemos, en este ejemplo, hasta 8 índices para ingresar, de acuerdo a la tabla de la imagen anterior. Dependiendo de ese valor obtendremos distintos resultados: sumas, promedios, verdadero, un mensaje de saludo, etc, etc. ¿Se entiende bien la gran ventaja de usar ELEGIR() en nuestros trabajos?
Vean el 5 argumento: ELEGIR(MES(AHORA());E1;E2;E3;E4;E5;E6;E7;E8;E9;E10;E11;E12). Estoy anidando un ELEGIR() dentro de otro. Si el usuario ingresa 5 en A1, Excel hará lo siguiente:
1) primero calculará el mes de la fecha que tiene nuestra PC y lo pondrá como primer argumento (indice)
2) seleccionará el mes respectivo de la lista de meses que le pasamos en el resto de los argumentos.
Este post lo estoy levantando el 6 de abril de 2011, es decir, el mes 4. Y en la siguiente imagen les muestro el resultado de ingresar 5 en A1:
tal lo indicado, en A2 obtengo el mes del sistema, que lo retorna luego de crear el índice (primer argumento) con MES(AHORA()) y buscar el respectivo elemento en el rango E1:E12
Las posibilidades son realmente ilimitadas, solo nuestras necesidades y conocimientos pueden acotarlas. La función en si es por demás de útil, nos ahorrará trabajo y hará que estas labores que requieren el uso de condiciones múltiples sea fácil de mantener.
Suerte y cualquier duda la postean.
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Etiquetas
Funciones
Etiquetas:
Funciones
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
como utilizo la función elegir cuando num_indice es una matriz
ResponderEliminarpasame un ejemplo de como sería el trabajo a realizar... es decir como es en la práctica eso de colocar una matriz en el primer argumento.
ResponderEliminargracias x tu mensaje.