Otra de las "imprescindibles" en excel.
[+/-] Ver el resto / Ocultar
Esta funcion nos permite buscar un valor en una tabla y, si este valor existe, devolvernos cierta información, de acuerdo al parámetro que le pasemos.
Sintaxis:
=BUSCARV(valor buscado, rango en donde buscar, nro de columna, [ordenado])
la funcion no tiene muchos misterios:
1) valor buscado: el dato que queremos buscar en un determinado rango
2) rango en donde buscar: aqui pasamos el rango en donde supuestamente está valor_buscado
3) nro de columna: si el valor existe, aqui especifico en que columna del rango está la info que
quiero
que la funcion me devuelva
4) ordenado: 1= verdadero ó 0 falso. es para especificarle a excel si el rango en donde buscará se
encuentra ordenado o no. Al margen, con 0 nos garantizamos una búsqueda exacta. Si el valor no está,
nos devolverá un error. Con 1 la busqueda es aproximada y nos traería el valor que mas se le parezca,
cosa que en este caso no deseamos para nada.
Con un ejemplo simple quedarán en claro los 4 argumentos:
Tengo la siguiente tabla:
[+/-] Ver el resto / Ocultar
Esta funcion nos permite buscar un valor en una tabla y, si este valor existe, devolvernos cierta información, de acuerdo al parámetro que le pasemos.
Sintaxis:
=BUSCARV(valor buscado, rango en donde buscar, nro de columna, [ordenado])
la funcion no tiene muchos misterios:
1) valor buscado: el dato que queremos buscar en un determinado rango
2) rango en donde buscar: aqui pasamos el rango en donde supuestamente está valor_buscado
3) nro de columna: si el valor existe, aqui especifico en que columna del rango está la info que
quiero
que la funcion me devuelva
4) ordenado: 1= verdadero ó 0 falso. es para especificarle a excel si el rango en donde buscará se
encuentra ordenado o no. Al margen, con 0 nos garantizamos una búsqueda exacta. Si el valor no está,
nos devolverá un error. Con 1 la busqueda es aproximada y nos traería el valor que mas se le parezca,
cosa que en este caso no deseamos para nada.
Con un ejemplo simple quedarán en claro los 4 argumentos:
Tengo la siguiente tabla:
desde ya que en la realidad esta tabla contendría decenas o cientos de registros.
Entonces, un cliente me pide que, ingresando en una celda el nro de legajo de la persona, me aparezcan su apellido y sueldo.
Y para ello elaboramos la siguiente función:
=BUSCARV(B8, $A$1:$D$6, 2, 0)
vamos a las imágenes para aclarar la cuestión:
Al usuario le doy la opcion de que ingrese el legajo en la celda B8 y en B10 ingreso la función que me traerá el apellido. Miren la barra de fórmulas, estoy diciendo: buscá el valor que hay en B8, dentro del rango $A$1:$E$6 y devolveme la segunda columna. Verán que la tabla posee 5 columnas, o sea que al ingresar 2 estoy especificando la segunda columna de la tabla, siempre contando de izquierda a derecha.
Ahora traer el sueldo no supondría mayores problemas, ya que solo deberemos reemplazar el tercer argumento: ¿en que columna está el sueldo?
Respuesta:
Observemos la barra de fórmulas: el único argumento que cambié es el tercero, poniendo un 5, ya que el sueldo se encuentra en la quinta columna.
Para dejarles un ejemplo mas completo, haré lo siguiente: me voy a llevar esa tabla a otra hoja y crearé un pequeño recibo de sueldos. Al ingresar el usuario un legajo, me traerá todos los datos de la persona y liquidará algunas hipotéticas deducciones.
tenemos un rudimentario "liquidador de sueldos". noten como la interfaz queda mucho mas limpia al llevarme la tabla a otra hoja. las celdas coloreadas de azul contienen formulas y rotulé cada una de ellas con una letra, para explicarlas a continuación:
a) =CONCATENAR(BUSCARV(D3;Hoja2!A1:E6;2;FALSO); ", " ; BUSCARV(D3;Hoja2!A1:E6;3;FALSO))
utilicé la función concatenar para "unir" apellido y nombre, separados por una coma.
b) =BUSCARV(D3;Hoja2!A1:E6;4;FALSO)
traje la cuarta columna de la tabla, la cual contiene la edad del empleado.
c) =BUSCARV(D3;Hoja2!A1:G6;7;FALSO)
idem anterior, pero traigo a la columna 7, en donde agregué la fecha de ingreso.
d) =BUSCARV(D3;Hoja2!A1:G6;5;FALSO)
idem, pero con la quinta columna, que es donde tengo el sueldo.
e) =(D9*0,11)*-1
saco el 11% del sueldo y al resultado lo multiplico por -1, para convertirlo a negativo.
f) =(D9*0,06)*-1
idem al punto e, pero con el 6% de la obra social.
g) =BUSCARV(D3;Hoja2!A1:G6;6;0)*0,15
a la tabla original le agregué la columna "ventas"; traigo ese valor y le saco el 15%, para calcular las comisiones que debo abonar.
Consideraciones: recuerden que me había llevado la tabla a otra hoja, en este caso la Hoja2. Miren como modifiqué el segundo parámetro: Hoja2!A1:G6. Así nos queda claro como referenciar rangos en otra hoja:
primero el nombre de la hoja en cuestión, luego el signo de admiración (cerrando) y por último el rango.
Agregué al final del formulario un botón al cual titulé imprimir, pudiéndole asignar la siguiente macro:
Sub ImprimirSueldos()
'este código me imprime una copia de la hoja activa:
ActiveSheet.PrintOut
End Sub
es un ejemplo por demás de sencillo. imaginen que nuestro cliente nos solicita que los porcentajes de las comisiones se abonen en base a la antiguedad de cada empleado y un mímino de ventas... las cosas se irían complicando. Pero el tema de operaciones con fechas merece un post aparte, el cual no se hará demorar.
Les dejo la imagen de la tabla utilizada en el ejemplo, para que analicen principalmente la utilización del tercer parámetro de la función.
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Etiquetas
Funciones
Etiquetas:
Funciones
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
unir dos formulas buscarv
ResponderEliminarque pasó con esta consulta, que solamente quedó en el título??
ResponderEliminarHola Damian, serías tan amable de indicarme que formula debo colocar para comparar 2 archivos o columnas con datos similares y que me detecte en otra columna cuales son las coinsidencias y cuales son los datos que faltan.
ResponderEliminardesde ya muchas gracias
disculpame la demora en mi respuesta, pero estuve ausente por tres semanas, por motivos laborales.
ResponderEliminarde nuevo en casa puedo volver a dedicarle un tiempo a mi blog. desde ya agradezco tu consulta.
creo que la función buscarv() resuelve perfectamente tu problema, te armé un ejemplo sencillo, aqui dejo el link al archivo:
https://sites.google.com/site/damianomarsilva2/buscarv_endoscolumnas.xls?attredirects=0&d=1
cualquier cosa me avisás.
omití un dato, quizás conocido, pero poco comentado: si tu planilla posee gran cantidad de datos (miles y miles), la utilización de funciones puede llegar a ralentizar Excel.
ResponderEliminarSi el ejemplo que te pasé demora mucho tiempo en correr, decime, que intentamos hacer algo con macros.
Hola buenas tardes Damian me podrias ayudar necesito una funcion como vlookup pero ke esta me de como resultado imagenes.
ResponderEliminarsi tengo una imagen en una celda y ligada a un Id y la kiero en otra hoja se puede hacer con alguna funcion?
si, el ejemplo es totalmente factible de ser realizado. el tema es que requiere de un post para explicarlo, dada la complejidad del trabajo.
ResponderEliminarlo voy a elaborar y luego te posteo el link, con algun archivo de ejemplo.
fijate en la seccion "mapa" y observá las entradas que tengo sobre tratamiento de imagenes en excel. con buscarv() el trabajo es muy estático y cada cambio conlleva constantes modificaciones. mira si algun ejemplo te sirve.
igualmente voy a postear con tu consulta y te aviso.