Ahora bien ¿como hago si necesito buscar el apellido y que me devuelva el nro de legajo?
La solucion viene de la mano de dos funciones, las cuales deberemos utilizar anidadas: COINCIDIR() E INDICE(), las cuales explicaré a continuación, por separado:
1) =COINCIDIR(valor_buscado; matriz; [tipo_de_coincidencia])
busca un valor dentro de una matriz de elementos y me devuelve su posición. Ejemplo:
=COINCIDIR("LEIVA",B1:B5,0)
me retornará 4, ya que LEIVA ocupa la cuarta posición en la matriz B1:B5
El tercer argumento de la funcion (opcional) soporta tres valores: -1, 0 , 1. En la ayuda de Excel encontramos lo siguiente:
1 u omitido: encuentra el mayor valor que es menor o igual que el valor_buscado. Los valores del argumento matriz_buscada se deben colocar en orden ascendente, por ejemplo: ...-2, -1, 0, 1, 2, ..., A-Z, FALSO, VERDADERO.
0: encuentra el primer valor que es exactamente igual que el valor_buscado. Los valores del argumento matriz_buscada pueden estar en cualquier orden.
-1: encuentra el menor valor que es mayor o igual que el valor_buscado. Los valores del argumento matriz_buscada se deben colocar en orden descendente, por ejemplo: VERDADERO, FALSO, Z-A, ...2, 1, 0, -1, -2, ..., etc.
Como en mi caso quiero una equivalencia exacta, utilizo a 0 como tercer argumento.
2)=INDICE(matriz; numero_de_fila, numero_de_columna)
nos retorna el valor de un elemento de una matriz o tabla, segun el numero de fila y columna que le indiquemos, que forman una intersección.
Vamos al ejemplo con la tabla mostrada anteriormente:
=INDICE(A1:C5;3;2)
exacto: en la tercer fila y segunda columna de la tabla A1:C5 se encuentra BERTH
Con ambas funciones en mente, nos resulta factible hacer lo siguiente: en una celda solicitamos al usuario que ingrese el apellido del empleado, y en celdas consecutivas devolvemos el legajo y sueldo:
Como segundo argumento de INDICE() utilizo a COINCIDIR(), que me devuelve el numero de fila en la tabla que ocupa el apellido ingresado en B1. Al tener en mis manos el nro de fila, solo me resta espeficicar en el tercer argumento de INDICE() o sea el nro de columna, para así lograr la intersección y que me devuelva su valor.
Para explicarlo mejor y por pasos:
en A3 ubico a LEIVA en la matriz: ocupa la cuarta posición. En A4 le pido que me devuelva el valor de la tabla que se halle en la intersección de la fila 4 (obtenida en la función anterior) y la columna 1 de la matriz (columna 1 = legajo). Si quisiera saber el sueldo, en lugar del valor 1 ingresado en el tercer argumento, habría puesto 3, ya que el sueldo está en la tercer columna.
Estos resultados los obtengo simplemente anidando las funciones "por separado" de la imagen anterior:
Bien, pero puede que necesitemos realizar, aun, otro tipo de búsqueda. Veamos la siguiente tabla, que nos muestra el rinde de cereales a lo largo de tres años:
Ahora supongamos que necesito conocer sobre el rinde del trigo en el año 2003. Los pasos a seguir para resolver esto son:
1) ubicar en que columna de la tabla se encuentra el año 2003
2) ubicar en que fila de la tabla se encuentra el trigo
3) devolver el valor con INDICE(matriz, fila, columna), dado que en los pasos anteriores obtuvimos el segundo y tercer argumento.
Entonces, comencemos:
1) averiguemos en que columna está el año y en que fila se encuentra el trigo:
busco el año en el rango A1:D1 y obtengo 4 (cuarta columna)
busco el trigo en el rango A1:A4 y obtengo 3 (tercer fila)
2) con los dos datos anteriores, utilizo INDICE():
si.... 32 es el rinde del trigo para el año 2003.
probemos cambiando los argumentos:
todo ok. el maiz en el año 2002 rindió 115 qq.
para no utilizar celda auxiliares, podemos anidar ambas funciones:
reemplacé el segundo y tercer argumento de INDICE(), que eran referencias a celdas, por la funcion COINCIDIR()
Si bien puede resultar un poco confuso para quienes nunca hayan utilizado estas funciones, el tema no es complicado y solo requiere de práctica y, fundamentalmente, realizar el "paso a paso", para ir evaluando el resultado obtenido con cada función. Luego de eso, nos "animamos" a proceder con la anidación de las funciones.
como le hago si tengo una columna de datos del 1 al 90, pero conforme la edad se activa solo un resultado del 1 al 90, los demas quedan en cero, pero quiero que ese unico valor arrojado de entre los 90, aparesca en una celda en especifico
ResponderEliminarestimado lector: vas a tener que aclararme un poco mas la consulta, ya que no comprendo muy bien que necesitas para tu proyecto.
ResponderEliminaren todo caso, si te parece, enviame el archivo a damianexcel@gmail.com, o brindame mas datos, así puedo elaborarte un ejemplo que sea útil.
gracias
Damian, muchisimas gracias!!! no tengo palabras para agradecerte la ayuda , me ha resultado fantastico, ahra solo me falta practicar un poco mas la anidada, pero paso a paso me salio muy bien, gracias mil!!!
ResponderEliminarespectacular, de primera. gracias x avisar, cualquier duda la posteas y vemos.
ResponderEliminarun abrazo.
Hola, estoy intentando sacar de una lista de materiales, cada item con 3 valores mínimos y no he logrado hacerlo, la base es más de 1000 items y se repiten pero necesito los 3 mínimos por cada item, ¿qué fórmula necesito hacer?, ademas necesito que cuando aplique la formula no tenga necesidad de estar ordenando la base a cada rato. Gracias
ResponderEliminarEsta es mi base resumida.
DESCRIPCIÓN UNIDAD DE MEDIDA VALOR UNITARIO
TUBO CONDUIT EMT 1/2" x 3 MTS Un 4124.67
TUBO CONDUIT EMT 1/2" X 3 MTS Un 5060
TUBO CONDUIT EMT 1/2" x 3 MTS Un 6550
TUBO CONDUIT EMT 1/2" X 3 MTS Un 8591
TUBO CONDUIT EMT 1" Un 11425
TUBO CONDUIT EMT 1" Un 11700
TUBO CONDUIT EMT 1" Un 13049
TUBO CONDUIT EMT 1" Un 14678
TUBO CONDUIT EMT 1" Un 14678
TUBO CONDUIT EMT 1" Un 16350
TUBO CONDUIT EMT 1 1/4" Un 17000
TUBO CONDUIT EMT 1 1/4" Un 17025
TUBO CONDUIT EMT 1 1/4" Un 19381
Por ejemplo para el caso de
MATERIAL vmin 1 vmin 2 vmin 3
TUBO CONDUIT EMT 1 1/4" 10 20 30
necesito utilizar una formula donde estan los valores para seleccionar el materia y me de los resultadoa de v1, v2, v3
Agradezco su colaboracion
Mi correo es jrqctunja@hotmail.com
Gracias
hola Roka, no comprendo tu planteamiento. Explicamelo un poco mas detallado así puedo ayudarte. Disculpame que no puedo hacerlo, pero no entiendo del todo la cuestión.
ResponderEliminar