Guía rápida para usar VLOOKUP, BUSCARV, CONSULTAV.
En Excel, la función VLOOKUP (y sus traducciones al español) es muy útil para realizar búsquedas. Aquí anexo una guía rápida sobre cómo utilizarla:
=VLOOKUP(qué celda buscar, en qué rango buscarla, qué columna regresar, qué regresar si no la encuentra)
En español, en lugar de VLOOKUP:
- hasta Excel 2007 se usa BUSCARV.
- desde Excel 2010 se usa CONSULTAV
qué celda buscar:
es la celda que contiene el valor que quiero buscar.
en qué rango buscarla:
rango de celdas donde se va a buscar. La primera celda contiene los valores que buscamos.
Tip: hay que oprimir la tecla F4 después de seleccionarlo, para que quede fijo.
qué columna regresar:
la columna del rango que contiene el valor que buscamos es la 1, y hacia la derecha está la 2, luego la 3, etcétera.
qué regresar si no la encuentra:
0 (cero) para no regresar nada y marcar error.
1 (uno) para regresar un valor anterior.
En Auval contamos con cursos de Excel que le pueden ayudar a ahorrar tiempo. Llámenos al 664 615-7117 o escríbanos a cursos@auval.com.mx.
Armando Franco © 2011
Armando…
En un libro de Excel 2007
• En una hoja “NOMBRES” tengo una lista de nombres
• En otra hoja “DATOS” tengo diferentes datos
• En un campo de una hoja “RESUMEN” quiero
1.Verificar que el nombre indicado en “RESUMEN” obtenido a través de una lista desplegable exista en la hoja “DATOS”
2.Verificar que la posición indicado en “RESUMEN” obtenida a través de otra lista desplegable exista en la hoja “DATOS”
3.Si se dan estas verificaciones quiero obtener e incorporar en la hoja “RESUMEN” un campo de la hoja “DATOS”
Gracias por la ayuda
Hola.
Lista desplegable: datos – validación de datos.
Verificar que exista: función VLOOKUP / BUSCARV.
Ver si se cumplen las dos condiciones: función IF / SI y AND / Y.
Hola Armando, verás, tengo dos Hojas. La primera con fecha y la sumatoria de los datos de una columna C que esta en la Hoja 2 . Esta Hoja 2 trae la fecha tambien, pero la fecha esta como tabla ej: (A3:A28) y los datos que pertenecen a esa fecha estan por celta C3, C4, C5… hasta la C28.
Lo que necesito, es sumar estas celdas si corresponde la fecha de la tabla de la Hoja 2 con la fecha de la Hoja 1.
Yo había hecho esto: =LOOKUP(A3;’Hoja2′!A:A;SUM(‘Hoja2’!C:C))
pero me sale error
también necesito sacar el promedio, EL MINIMO Y EL MAXIMO.
Agradecería tu ayuda.
Usa estas fórmulas. Oprime Ctrl-Shift-Enter para meter la fórmula.
=SUM(IF([@Fecha]=Hoja1!$A$3:$A$28,Hoja1!$B$3:$B$28,0))
=AVERAGE(IF([@Fecha]=Hoja1!$A$3:$A$28,Hoja1!$B$3:$B$28,0))
=MIN(IF([@Fecha]=Hoja1!$A$3:$A$28,Hoja1!$B$3:$B$28,0))
=MAX(IF([@Fecha]=Hoja1!$A$3:$A$28,Hoja1!$B$3:$B$28,0))
Buenas tardes me podrías orientar por favor, es que al momento de utilizar la función Buscarv en office 2013 en una búsqueda en el mismo archivo requiero solo poner el nombre del articulo y que me traiga todas las características, pero me marca error y donde me arroja información me la arroja errónea, me podrías apoyar.
¿Pudieras enviarme el archivo o una dirección de dropbox o onedrive donde lo pueda ver? La descripción del error es muy genérica.
Estimado,
Cómo puedo hacer para que en vez de que me aparezca N/A diga «No encontrado»?
Se puede usar otra fórmula para reemplazar dichas siglas?
Gracias!
Te lo puse aquí, para ordenar mejor la información:
http://www.auval.com.mx/notas/para-eliminar-el-error-na-al-usar-buscarv-consultav-o-vlookup/
CORDIAL SALUDO,
COMO HACER QUE UNA BASE DE DATOS NE EXCEL SE ALIMENTE AUTOMATICAMENTE DESDE OTRO ARCHIVO DE EXCEL.
Puedes usar una función como VLOOKUP haciendo referencia a otro archivo, y luego te dice que si quieres actualizar los valores.
Armando buen dia, otra vez necesito tu ayuda, como hago para enviar un correo electrónico (Outlook 2013) desde Excel 2013 si una celda me cumple cierto valor????
Se necesita una macro. Aquí hay unas buenísimas.
http://www.rondebruin.nl/win/s1/outlook/mail.htm
Con buscarv adicional a la información de la celda me puedo traer el formato de esta, en la hoja original se resaltan los datos en color y quiero que este formato se replique en el resultado de la formula.
No puedes traer el formato de la celda (necesitarías una macro) pero sí puedes traer el valor y usar formato condicional para cambiarle el color.
Buenas tardes Armando, me puedes ayudar diciéndome como hacer la macro que comentas, para devolver el color de una celda de una hoja a otra hoja (A5 Antonio C5 rojo M5 amarillo y negritas) o como seria hacerlo en formato condicional.Ojala me puedas ayudar muchas gracias.
¿Cuáles son los criterios para que una celda se ponga rojo, amarillo o tenga negritas?
En una hoja tengo varios datos con algunas celdas en color para identificar diferentes criterios, cada mes tengo que hacer dicha hoja, la cual bajo la base del mi sistema, pero tengo que devolver los datos con buscarv a la hoja nueva de la hoja anterior, es por eso que necesito devolver el dato que corresponde al valor buscado y al mismo tiempo el color y/o si esta en negritas (las negritas no son muchosdatos, no es tan importante).
Espero me haya explicado, mil gracias por tu ayuda.
Hola Armando buenas tardes, Espero aún estés respondiendo preguntas, necesito sumar los valores de diferentes celdas comparándolas con otras, por ejemplo tengo en una hoja varias tablas con los campos iguales en ellas (Asignatario, cumplidos)necesito sumar los cumplidos que pertenezcan a un mismo asignatario, el cual aparece en las diferentes tablas.
Tabla 1 Tabla 2
Asignatario Cumplidos Asignatario Cumplidos
Nombre valor Nombre valor
Mil Gracias por la ayuda que me puedas brindar.
Hola Manuel. Tendrías que hacer un vlookup para cada tabla. Podría ser:
=iferror(vlookup(a1,tabla1, 2,0),0)+iferror(vlookup(a1,tabla2, 2,0),0)+iferror(vlookup(a1,tabla3, 2,0),0)
Yo recomendaría meter el nombre de la tabla en una columna extra, poner todos los datos en la misma tabla y usar un sumifs.
Muchisimas gracias Armando, me sirvió a la perfeccion el comando, agradezco la ayuda, algo mas que aprendi.
saludos desde Colombia.
🙂
Hola Armando, tengo problemas para utilizar la funcion consutav, me aparece #N/A, ya revise los comentarios anteriores e hice todo lo que tu sugieres; pero no se arregla mi problema. En la misma hoja de excel tiene insertada la funcion consultav varias veces y funciona muy bien. Pero en una columna en especifico no esta funcionando. Como puedo solucionarlo. Por tu ayuda mil gracias y espero tu respuesta
Hola Roberto.
CONSULTAV requiere que sean del mismo tipo el valor buscado y el valor donde se busca. La causa más común para que no encuentre un valor es que no son exactamente iguales. Luego escribiré un artículo (cuando tenga más tiempo). Por lo pronto:
La función puede no encontrar números porque:
a) Uno está como texto (tiene un triangulito verde en la esquina superior izquierda de la celda) y el otro no.
b) Los números se redondean en el formato, pero no son iguales (1.22 y 1.221 se redondean a 1.22, pero Excel los ve diferentes).
La función puede no encontrar textos porque:
a) Uno de los textos tiene más espacios en blanco que el otro.
b) Uno de los textos usa como espacio el caracter que aparece al escribir Alt y 32 en el teclado númerico. El otro es el que aparece con Alt y 0160 en el teclado numérico. Se ven iguales, pero para Excel no lo son.
La función puede no encontrar fechas porque:
a) Una fecha es texto y la otra es numérica.
b) Las horas son diferentes en ambas fechas.
¿Cuál es tu caso?
Saludos.
Armando.
Buenas tardes.
Tengo un reporte que jala información de tablas que cada una de ellas están en hojas distintas, inserto una hoja/tabla todos los días. En el reporte cada columna es una fecha diferente y por consiguiente una tabla/hoja distinta.
Actualmente tengo que editar el VLOOKUP con la información de la siguiente tabla y lo que cambia básicamente es el «table_array».
Como puedo utilizar CONCATENATE dentro del VLOOKUP para dejar valores fijos y solo arrastrar la fórmula.
Ejemplo de lo que quiero hacer y no funciona.
=VLOOKUP(B5,CONCATENATE(«‘»,GQ3,»‘!_»,GQ3),GQ2,0)
Espero esto sea posible.
Saludos.
Jesus Tristan.
Hola Jesús.
Lo que necesitas es indicarle que es una referencia indirecta. Prueba con:
=VLOOKUP(B5,INDIRECT(CONCATENATE(“‘”,GQ3,”‘!_”,GQ3)),GQ2,0)
En el ejemplo que sigue toma el nombre de la hoja de la columna A, el dato que busca de la columna B, y busca en las columnas A y B de la hoja que indica la celda A4.
=VLOOKUP(B4,INDIRECT(A4&»!A:B»),2,0
Excelente Armando, esa era la solución.
Te agradezco mucho tu ayuda y sobre todo tu tiempo.
Saludos.
JT
HOLA DESEO QUE ME AYUDES A SOLUCIONAR UN PROBLEMA, RESULTA QUE MANEJO UN ARCHIVO CON TABLA Y EN LA COLUMNA QUE CORRESPONDE A LA FECHA QUE LA CAMBIO MANUALMENTE A DIARIO, PONGO 19/01/2015 CUANDO CIERRO EL ARCHIVO Y LO VUELVO A ABRIR ESTA FECHA YA SE CAMBIO POR EL NUMERO 42022 Y ASI SUCESIVAMENTE, COMO HAGO PARA CORREGIR ESTO, ESTE PROBLEMA LO TENGO HACE UNA SEMANA Y TODAS FECHAS SE HAN CAMBIADO, INCLUSO LAS FECHAS QUE SE PUSIERON EL AÑO PASADO
GRACIAS POR TU ATENCION
Necesitaría verlo para ver qué pasa, pero una solución temporal podría ser dar click en una fecha, oprimir Ctrl – Barra espaciadora para seleccionar la columna y luego Ctrl – Shift – 3 (donde sale el signo #). Esto da formato de fechas rápido.
Te mando un correo para dar seguimiento.
MUY AGRADECIDO POR TU AYUDA HICE LO QUE ME RECOMENDASTE Y SE HAN RESTABLECIDO LAS FECHAS, UN ABRAZO GRACIAS POR TU VALIOSO APOYO
🙂
Como puedo hacer la formula para que de una hoja a otra pueda traerme un valor condicionado por un texto, es decir:
Si en la hoja 1 me busca el valor de la hoja 2, del cual me arrastra el valor de la columna D, en el cual quiero agregar una condicionante, que si la columna H de la hoja 2 dice»fija» me arrastre el valor de la columna G en lugar de la D.
Se puede poner la condición dentro de la fórmula:
=VLOOKUP(HOJA1!A1, IF(hoja2!h1 = «Fija», G:H, D:E), 2, 0)
=BUSCARV(HOJA1!A1, SI(hoja2!h1 = «Fija», G:H, D:E), 2, 0)
Solo una pregunta si la formula la estoy ingresando la tengo dentro de la Hoja1 es necesario agregar HOJA1!A1, o solo deberia colocar el valor A1.??
Basta con poner A1, aunque si escogemos valores de otra hoja, Excel agrega por default el nombre de todas las hojas.
Hola Armando, cual seria la formula VLOOKUP, para lo siguinte:
En HOJA 1, tengo en la colummna A1 , Codigo de libros, en la culumba B2
los nombres de los libros, quisiera que en HOJA 2, COLUMNA A1, ingresar cual quier codigo de libro y en columna B2, me aparezca el nombre del libro.
Hay que poner esto en B2 de la Hoja2.
=VLOOKUP(A1, Hoja1!A:B, 2, 0)
Saludos.
Hola, tienes muchas preguntas y espero no te moleste la mía…
Tengo una serie de embarques relacionados con productos, es decir, tengo productos A, B, C, D, etc y embarques 1, 2, 3…., n.
Tengo la lista de todos los prodcutos por aparte, pero necesito conocer en que embarque han llegado. No puede ser un buscar sencillo porq pueden llegar en cualquier embarque, osea, puedo tener producto A y B en el embarque 1, B y C en el 2, A y C en el 3. Al final quisiera que esto se reflejara en dos celdas, en la primera que producto es y en la segunda en que embarques ha llegado dicho producto.
No hay una función de Excel que haga un BUSCARV y te dé en una celda todas las celdas que corresponden. Necesitarías una macro como esta, donde pones el artículo, el rango (empezando por el artículo, como en el VLOOKUP) y la columna que tiene el embarque. La función asume que el número de artículo y el número de embarque son diferentes, y que ninguna celda tiene el número de artículo aparte de la primera columna:
http://www.auval.com.mx/notas/wp-content/uploads/compara.jpg
Option Explicit
Function compara(buscar As Variant, artículos As Range, columna As Integer)
Dim celda As Range
For Each celda In artículos
If celda = buscar Then compara = compara & celda.Offset(0, columna – 1).Value & » »
Next celda
End Function
Hola Armando.
Queria consultarte sobre como crear un filtro en una hoja, buscando los datos de varios libros
Tengo 52 libros (uno x semana) los cuales tienen una hoja con 1912 filas y 13 columnas que contienen datos. Cada fila es un registro.
Lo que busco es.. en un nuevo libro poder traer esa información para filtrarla.
El filtro es mediante un código, y necesito todos los ingresos que se hicieron con ese código, por lo cual hay formulas que no me sirven ya que me traen el primer registro encontrado.
Desde ya muchas gracias x tu aporte.
Hola Jaci.
Lo mejor es juntar toda la información de los 52 libros, agregándoles una columna llamada «Semana». Si toda la información se encuentra en el mismo libro, se pueden hacer con facilidad filtros, búsquedas y tablas dinámicas.
Otra opción es usar datos, consolidar, que reúne toda la información en un libro. Los archivos necesitarían tener el mismo formato. Hay que seleccionar los datos e ir a fórmulas – nombres de rango – crear desde la selección en cada libro. Es más rápido copiar todos los datos a otra hoja.
Veo seguido este tipo de divisiones, y cuando vemos por qué no se puede tener en una hoja, normalmente la respuesta se reduce a: «porque estamos acostumbrados a tener una hoja por semana». Normalmente se puede hacer lo mismo de una y otra manera, y después del shock del cambio, tener todo en el mismo libro es mucho más práctico.
Suerte.
Armando.
Hola Armando
Gusto en saludarte, podría accesorar como realiza un macro que compare la primera columna con todas las demás, y diga que columnas son igual que contiene los mismos elementos.
Ejeplo
columna1 columna2 columna3
1 0 1
0 0 0
1 1 1
1 1 1
0 0 0
La columna 1 y columna 3 son iguales
De antemano gracias
Es más fácil con una fórmula de array.
Suponiendo que los datos están colocados de A1 a C5, hay que escribir esta fórmula en C7, y oprimir CTRL-SHIFT-ENTER en lugar de ENTER al terminar.
=IF(SUM(IF(C1:C5=$A$1:$A$5,1,0))=COUNTA(C1:C5),»Igual a columna 1″,»»)
El IF interno dice: «Si la columna C es igual a la columna A, suma 1, si no, suma 0.
El IF externo dice: «Si la suma de los números que coinciden es igual al número total de números, entonces (todos coinciden) y escribe «Igual a columna 1», si no, no escribas nada.
CTRL SHIFT ENTER hace que la fórmula trabaje con el rango en vez de con una sola celda.
Aquí hice un video:
http://www.auval.com.mx/notas/como-comparar-columnas-completas-con-formula-cse/
Muy buenas Tardes me gustaria saber si es posible hacer una validacion de lo siguiente,en la «Hoja A» en la Columna «A» tengo 2 codigos tanto en la fila 1 como en la 2 iguales «70101» sin embargo en la Columna «B» tiene asignado un codigo largo distinto «7010110» «7010118» y en la Columna «C» descripción distinta «Producto A» y Producto B». En la «Hoja B» en la «Columna «B» hice mediante un BuscarV para que al ingresar en la celda «A» el codigo corto me trajera la información de la celda B y C de la Hoja A, mas deseo que al ingresar uno de los codigos cortos iguales pueda saber mediante una forma cual de los codigos de la celda «B» Seleccionar
Es una pregunta interesante. Un día de estos haré un video. 🙂
Por lo pronto, parece que este video lo explica.
http://www.contextures.com/xlDataVal02.html
hola!!!
yo quiero hacer una base con valores en una columna y de lo que ponga en esa columna quiero que especifique lo que significa cada valor, algo asi como que pongo A B C D E y cada letra tiene un valor y que aparesca en la siguiente columna cuando la escriba
Hay que hacer un BUSCARV / VLOOKUP en cada celda donde aparecerán los valores, cambiando la columna que regresa (el tercer parámetro). Para que busque A y traiga lo que está en B, sería
=vlookup(a1, Hoja2!A:E, 2, 0)
Y para que traiga lo de C, usamos:
=vlookup(a1, Hoja2!A:E, 2, 0)
Hola Armando,
=VLOOKUP(qué celda buscar, en qué rango buscarla, qué columna regresar, qué regresar si no la encuentra)
Si deseo trabajar con variables, es decir la celda a buscar cambiará de posición, el rango cambiará de «sheets», la columna cambiara).
Como se puede escribir estas variables y como se tienen que declarar.
Muchas gracias por tu ayuda
Puedes usar la función INDIRECTO / INDIRECT.
En este ejemplo, va a buscar lo que tiene en A1 en base a un rango que busca según lo que tiene en B1.
=VLOOKUP(A1, INDIRECT(VLOOKUP(B1, RANGOS, 2, 0)), 2, 0)
Hola. Quisiera ver la posibilidad de si me puedes ayudar con lo siguiente:
Tengo 2 hojas en un mismo libro (en Excel 2003) las cuales quiero realizar una macro que contenga el VLOOKUP buscando un valor en la matriz de los datos que se encuentra en la 2da hoja.
Para ser mas concreto, quiero saber si el valor A que esta en la hoja «ACTUAL» se encuentra en la planilla «ANTERIOR». Para lo anterior, realizo la siguiente formula en primera instancia en excel:
(me posiciono en la hoja «ACTUAL» donde estará el BUSCARV)
=BUSCARV(A2; ANTERIOR!$A$2:$F$85;4;0)
… la idea es que la celda final del rango sea variable ($F$85), es decir, se obtendra a partir de la funcion [ActiveCell.SpecialCells(xlLastCell).Select] la ultima celda con datos, ya que la hoja ANTERIOR tendra una cantidad variable de datos cada vez que se cargue.
El codigo traducido (de Excel a VB para una Macro) que llevo construido es:
Sheets(«ANTERIOR»).Select ‘Ubicandose en «ANTERIOR»
ActiveCell.SpecialCells(xlLastCell).Select ‘ Obtener ubicacion ultima celda-derecha
UltimaFila = ActiveCell.Row
UltimaColumna = (ActiveCell.Column – 1) ‘esto es asi ya que la ultima columna no la_
‘necesito para efectos del VLOOKUP
UbicacionCeldaFin = «R» & UltimaFila & «C» & UltimaColumna ‘ => R85C6
‘————————————————–
Sheets(«ACTUAL»).Select ‘Ubicandose en «ACTUAL»
Range(«D2»).Select
ActiveCell.FormulaR1C1 = «=VLOOKUP(RC[-3],DIFERIDAS!R2C1 & ‘:’ & ‘UbicacionCeldaFin’_
& ,4,0)»
Teniendo lo anterior, el PROBLEMA se crea ya que intento reemplazar [UbicacionCeldaFin] en la formula VLOOKUP ya que contiene el dato de la ultima celda de la hoja ANTERIOR, pero me entrega el mensaje «Error definido por la aplicacion o el objeto». No sé si sera a raiz de una mala sintaxis o es porque falta algo mas.
Favor vuestra ayuda ya que he estado casi 2 dias intentando llegar a la solución.
desde ya, muchas gracias!!!!
Si no hay más datos abajo, puedes seleccionar columnas completas ANTERIOR!A:F, y te evitas el problema. Siempre buscará en todas las columnas.
¿Funciona esto?
Hola buena tarde, me puede ayudar por favor, tengo un archivo con datos en la primera hoja tengo el numero de cliente en la primer columna y en la segunda hoja tengo en la primer columna el número de cliente, en la segunda el nombre, en la tercera un importe en la cuarta su RFC, en la quinta una clave que puede ser M/S o DSM, y en la sexta columna una fecha, quiero por favor que en la primera hoja en la segunda columna columna me busque el numero de cliente en la segunda hoja y si en la quinta columna encuentra la clave M/S me traiga le fecha de la sexta columna, ¿es posible esto?
Le agradezco mucho
Sí.
Suena a que la fórmula es así:
=SI(BUSCARV(A:A, HOJA2!A:E, 5, 0) = «M/S», BUSCARV(A:A, HOJA2!A:F, 6, 0), «»)
Muchas gracias, excelente su ayuda
🙂
Buen dia Armando:
resulta que tengo una hoja con u reporte de enero hasta agosto, debo agragrle una columna que diga acumulado, pero los datos podrian cambiar por mes y agrandar la matriz, por lo que pense que coon una conbinacion de buscarv y sumar si podria conseguirlo pero no le llego a lo correcto. espero puedas orientarme
SUMAR.SI.CONJUNTO funciona como la combinación de BUSCARV y SUMAR. Le dices: «Suma la columna Fulanita cuando la columna Menganita cumpla con esto y la columna Zutanita cumpla con esta otra cosa».
hola! necesito ayuda con las funciones de excel, estoy muy confusa. Ojala pueda ayudarme, se lo agradeceria mucho.
En cuanto tenga chanza le contesto el correo. 🙂
Saludos Armando.
Esperó puedas ayudarme. Estoy intentando conciliar una cuenta bancaria con los depósitos de distintas localidades. Primero concadene el monto depositado con las iniciales de la localidad, luego concadene el monto en banco con las iniciales de la localidad. Luego hice un vlookup para buscar la fecha del monto en banco. El grueso de las buscadas refleja el resultado sin dificultad. El problema surge cuando el monto se repite en la misma localidad por varios días. El resultado que refleja es el primero en listado de la tabla que en ocasiones la fecha que refleja en banco es previa al depósito porque pertenece a otro día.
Lo ideal sería que verificara primero la fecha y de ser mayor a la del depósito realizar la búsqueda. Esperó haberme explicado bien. Agradezco la ayuda que puedas brindarme.
Es un problema común con la conciliación. Hay que concatenarle a la cantidad un número de veces que se repite. Tengo en proyecto hacer un video de cómo hacerle, pero no he tenido chanza. 🙂
Hola Franco
Estuve revisando su página donde explica la formual de vlook up
Y tengo varias dudas, por ejemplo:
Tengo una hoja en Excel con la informacionm como sigue:
Hoja Uno:
Columna A (Los datos de ordenes internas)
Columna B (Importe en MXN)
Columna C (Importe en USD)
Hoja Dos:
Los datos anteriores mas :
Columna D (Nombre de la factura)
Columna E (comentarios de las facturas)
Quiero actualizar esta información, pero como le hago para que en la hoja Uno pueja obtener que nombre le corresponde a cada orden interna.
Quiero que en la hoja uno me aparezca el nombre de la Factura y los comentarios.
=VLOOKUP(A2,DATOS!A7:F739,4)
Pero cuando ocupo esta formual, me jala los datos incorrectos, por ejemplo en la primer busqueda que realice no me coincide el nombre de la factura con su orden interna.
Espero pronta respuesta
Muchas gracias
Hola Miriam.
Quizá funcione buscar por columnas:
=VLOOKUP(A2,DATOS!A:F,4)
Saludos.
Armando.
kiero hacer un libro de excel en donde registro las ordenes que entrego en x empresa con x numero de orden entonces kiero buscar en varios registros para que me de la descripcion porque de las ordenes ya que se registran en varios libros de excel ya le hice con dos libros pero no puedo juntar un 3 libro de excel alguien me puede decir como hacerle
Puede ser algo así.
=si.error(BUSCARV(celda,hoja1!rango,3,0),si.error(buscarv(celda, hoja2!rango, 3, 0), si.error(buscarv(celda, hoja3!rango, 3, 0), «»)))
Hola Armando, que bien está tu sección. Felicitaciones.
Quiero hacerte una pregunta: A qué se debe que en mi Excel 2010, al usar la fórmula CONSULTAV entre dos libros, no funciona? Tengo que pegar una copia de la información del libro externo en una hoja del libro donde va la fórmula y sólo así me hace las búsquedas.
Me puedes ayudar? De antemano, gracias!
Probablemente estés trabajando con dos sesiones de Excel.
Prueba esto:
a) Cierra todos los archivos de Excel que tengas.
b) Abre Excel sin ningún archivo.
c) Abre los archivos que necesitas usando Archivo – Abrir / File – Open.
d) Trata de usar CONSULTAV.
Si se arregla con estos pasos, es que tenías dos sesiones abiertas. Puedes abrir dos sesiones, sin querer, cuando abres los archivos de Excel dándole doble click al icono del archivo en un correo electrónico o en el explorador de Windows, o en cualquier lugar que no sea la opción de abrir archivos desde Excel. Esto deja de pasar en Excel 2013.
Buen dia,
Estoy programando en VBA con la funcio Vlookup, pero al no encontrar un dato la macro me arroja error, que control de errores le debo escribir en lenguaje VBA.
Agradezco tu atencion.
Hola Óscar.
Si lo estás asignando a una variable, la variable tiene que ser de tipo variant.
Luego puedes aplicarle la función ISERROR() a la variable.
Saludos.
Armando.
hola amigo una pregunta.. imagina que tengo 2 columnas con 5 palabras cada una, osea 5 celdas por columna…como puedo hacer para que en otra columna me arroje combinaciones aleatorias entre texto de columna 1 y texto de columna 2..y si es posible que junte los dos textos en una sola celda,, mejor..
mi idea es hacer todas las comobinaciones posibles..entre todos los textos
saludos
Suponiendo que unos valores están de a1 a a5 y los otros de B1 a B5, esta fórmula hace la chamba:
=CONCATENATE(INDEX($A$1:$A$5,TRUNC((ROW()-1)/5)+1),INDEX($B$1:$B$5,MOD(ROW()-1,5)+1))
Cópiala en D1 y llena hasta D25.
buenas tardes!..
tengo algunas dudas espero puedas ayudarme…he realizado una base de datos donde están cursos, fechas y empleados que han tomado estos cursos el problema es que cuando utilizo la formula de vlookup solo me da el primer curso que encuentra y obviamente hay empleados que han tomado varios cursos,, lo que yo busco es que me pueda seguir buscando los cursos siguientes e irlos acomodando en la misma columna..
saludos
Esto se arregla usando concatenar y countif. Si me mandas el archivo a afranco@auval.com.mx te lo pongo. Tengo que hacer un video de esto pero no he tenido chanza.
Que tal Armando:
Cuando hago la función Vlookup, el valor traido es el primero en orden ascendente. El numero que quiero que traiga es el mas proximo a 290, pero en mi tabla de rango tengo 200 y 300. La funcion trae 200 y quiero que sea 300. Como puedo hacer esto?
Si los valores están en A, inserta una columna B con 0 junto al primer valor y esta fórmula en B2:
=A3+(A4-A3)/2
Copia la fórmula hacia abajo. Esta fórmula te va a dar el valor que está entre los dos. Después, la fórmula:
=CONSULTAV(E2,B:C,2,1)
=VLOOKUP(E2,B:C,2,1)
Te va a traer el valor más próximo.
A
B
C
1
Valor
Para buscar
Resultado
2
0
0
ABC
3
2.5
1.25
CDE
4
80
41.25
DEF
5
90
85
GHI
6
200
145
JKL
7
300
250
MNO
8
500
400
PQR
9
10
Estimado Armando, excelente tu pagina .. mi pregunta es la siguiente, hay alguna forma de extraer la información de una celda que esta en formato fecha a otra y que conserve el formato de la misma, ya que es un recibo que debe decir ANTICIPO DEL: DD/MM/YYYY, pero con Vlockup me extrae es su formato númerico.
Gracias
Hola.
Hay varias opciones. Una es que oprimas Ctrl-1 (con el teclado de arriba de las letras) y en el formato captures
«ANTICIPO DEL: «dd/mm/yyyy
También puedes oprimir Ctr-Shift-# para dar un formato de fecha rápida al formato numérico.
Y usando fórmula, coloca tu VLOOKUP entero dentro de esta fórmula:
=»ANTICIPO DEL: » & TEXT(tu-vlookup, «dd/mm/yyyy»)
¿Se arregló?
Saludos.
Armando.
Hola Armando, en mi caso necesito que me busque la ultima fecha ingresada para un determinado equipo en otra planilla. Por ejemplo en una planilla tengo una lista de algunos equipos y en la otra tengo las fechas de limpieza de todos los equipos. Lo que quiero es que en la primer planilla elija x equipos y que me figure la ultima fecha de limpieza de esos equipos elegidos, he usado la formula Vlookup, pero me figura la primer limpieza realizada de cada equipo, pero no se como hacer para que me diga la ultima. Y usando lookup no me identefica los equipos por separados y me dice la ultima fecha ingresada de cualquier equipo. Bueno espero que puedas ayudarme. Muchas gracias
Hola Franco.
1. Ordena la hoja por equipo (ascendente) y fecha (descendente). Así el último servicio será el primero que aparezca.
2. Usa una columna para concatenar el equipo y la fecha, tanto en la hoja que buscas como en la hoja donde buscas. Si el equipo está en A2 y la fecha en B2, en C2 pones la fórmula
=B2&C2
3. Busca los datos concatenados, en vez de por separado.
Estimado Armando, Ojala puedas ayudarme con un problema que tengo con Excel 2010. Al utilizar la formula BUSCARV, referenciado a otro libro que tengo dentro de una red de trabajo, todo sale perfecto. El problema esta cuando abro de nueva cuenta el libro con las referencias. Sin mover modificar absolutamente nada, en mi libro formulado aparece todo con el error #¡REF!. No me queda de otra mas que escribir TODAS las formulas de nueva cuenta para que funcionen de nueva cuenta. ¿Qué podrá estar pasando?
Muchas gracias por tu apoyo.
Se me ocurren dos cosas:
a) No está permitiendo la conexión al otro libro.
b) No encuentra el otro libro.
c) No se está grabando como archivo de Excel en la versión más reciente.
Para revisar qué pasa, haría varias pruebas:
a) Haría lo mismo en otra computadora. Si funciona bien en la otra, el problema es de una computadora en particular.
b) Abriría los dos archivos con Archivo – Abrir, dentro de Excel, en vez de dando click en el explorador de Windows.
c) Revisaría que al iniciar Excel pregunte si quiero habilitar enlaces externos.
Espero que sirvan estos comentarios.
BUENOS DIAS ARMANDO FRANCO
COMO PUEDO HACERLE PARA QUE LA FUNCION BUSCAR VALOR, ME BUSQUE UN VALOR, EN VARIAS HOJAS DEL MISMO LIBRO Y ASU VEZ TODO LO QUE ENCUENTRE LO COLOQUE EN UNA COLUMNA???
DE ANTEMANO GRACIAS
Hola Víctor.
No hay una función particular, aunque se puede hacer con una combinación de SUMIFS, COUNTIFS, VLOOKUP, CONCATENATE e IF. O con fórmulas de Array, a lo mejor. ¿Qué debe hacer la hoja?
pues de varios libros buscar un valor dado, se puede??
Si se trata de sumar el resultado de todas las veces que aparezca el valor, se puede usar =SUMIFS(HOJA1!A1:A20,HOJA1!B1:B20,»A») + SUMIFS(HOJA2!A1:A20,HOJA2!B1:B20,»A»)+ …
Armando, es factible un buscar V y que me traiga toda la fila que contenga el valor indicado,por ejemplo 4 Dinero Oro Plata
Que si en el buscar V pongo 4 me traiga Dinero Oro Plata
Tienes que usar una fórmula para cada valor. Puedes usar, en lugar de la columna que quieres, la función COLUMNA() o COLUMN() para poder copiar la fórmula y no tener que teclearla todo el tiempo. Ah, y ponle un signo de pesos antes de la letra de la columna que vas a buscar.
Hola, disculpa, una pregunta
Tengo Excel 2010 en español y deseo hacer lo siguiente:
– Tengo dos archivos de excel
– En ambos hay una columna A que tiene algunas celdas con información igual (Digamos que la columna A es un número de cliente)
– En la Columna B de cada Libro, tengo el Nombre del cliente
Lo que quiero hacer es lo siguiente
De la Columna A de mi Libro 1, comparar contra la columna A de mi libro 2, y para los valores que si existan en ambas, que me mande a una columna C el valor de la columna B (Nombre del cliente) de mi Libro 1
Cómo puedo hacer esa consulta?
Mil gracias
Hola.
Gracias por la pregunta.
buen dia armando, necesito ayuda.. requiero una formula que cuando le defina la celda a buscar, me traiga no solo un dato sino varios, es decir cuando le de una condicion busque dentro del rango de celdas la misma condicion y me la traiga las veces que aparezca.. no se si fui clara…
asi lo estoy haciendo VLOOKUP(E9;$BH$7:BI$341;2) pero solo me trae una condiciones no todas las que estan en el rango de celdas.
Gracias
Hola.
El VLOOKUP está diseñado para traer un solo resultado. Si queremos que traiga varios, necesitamos agregarle un contador. Por ejemplo, si tengo en la columna A y B estos datos:
Armando 123
Armando 154
Armando 321
Tendría que insertar otra columna que dijera el número de repetición.
Armando1 Armando 123
Armando2 Armando 154
Armando3 Armando 321
La fórmula que se pondría en A1 (suponiendo que A1 dice «Armando» y B1, «123») sería =B1 & countif($a$1:a1,a1)
Hola Armando Gracias por tu informacion!
Queria saber si me podrias ayudar. No estoy pudiendo aplicar la formula correctamente. Lo que necesito es una formula que busque el num de factura de la celda anterior y me devuelva el importe. en otro archivo tengo la relacion de num de factura con el importe.
Me aparece #REF
=+BUSCARV(D4, ‘[Cobranza 2014.xlsx]Consecutivo Facturas’!$B$2:$B$8501, ‘[Cobranza 2014.xlsx]Consecutivo Facturas’!$D$2:$D$8501,FALSO)
Gracias!!
Creo que estos son los problemas.
=+BUSCARV(D4, ‘[Cobranza 2014.xlsx]Consecutivo Facturas’!$B$2:$B$8501, ‘[Cobranza 2014.xlsx]Consecutivo Facturas’!$D$2:$D$8501,FALSO)
Debe ser así:
=+BUSCARV(D4, ‘[Cobranza 2014.xlsx]Consecutivo Facturas’!$B$2:$d$8501, 3,FALSO)
HOla Que tal Armando, como se utilizaria una formula en donde contenga vlookup y el if, tengo un archivo en donde me quiero traer una informacion de otra pestaña, pero requiero que me la traiga con dos condiciones, que solo me traiga la informacion que tenga el numero y un concepto especifico, sino que me traiga 0
Hola Sergio.
Perdón por la demora en contestar. Hoy de pronto me aparecieron 10 mensajes pendientes, cuando antes no tenía ninguno.
Si necesitas una suma con dos condiciones, puedes usar el SUMIFS.
=sumifs(c:c,a:a,»x»,b:b,»y»)
Esto significa: Suma la columna C cuando la columna A diga «x» y la columna B diga «y».
¿Te sirve esto?
Como podria hacer la suma de dos vlookup´s que el mismo ID lo busque en dos bases de datos y si lo encuentra que los sume, si me pueden ayudar.
gracias
Perdón por la demora en contestar. Hoy de pronto me aparecieron 10 mensajes pendientes, cuando antes no tenía ninguno.
Si quiero que si hay un error dé cero, y si no hay error en ninguno, los sume.
=IF(OR(ISERROR(VLOOKUP(1,Table1,2,0)),ISERROR(VLOOKUP(1,Table2,2,0))),0,VLOOKUP(1,Table1,2,0)+VLOOKUP(1,Table2,2,0))
Si quiero que si lo encuentra en cualquiera de los dos lo sume, y si no lo encuentra en uno de los dos lo tome como cero:
=IFERROR(VLOOKUP(1,Table1,2,0),0)+IFERROR(VLOOKUP(1,Table2,2,0),0)
que tal armando:
necesito saber usar la función de vlookup tengo office 2010 en mi empresa usan mucho esa función para cruzar información, por ejemplo:
tengo una archivo de Hong Kong con todos los modelos que se manejan y me mandan un archivo de estados unidos con lo que me han enviado necesito saber que modelos son los que me faltan por enviar ya que manejamos muchos modelos, la mercancía que se maneja es ropa
espero me puedas ayudar por que lo tengo que hacer manual imginate
saludos cordiales
nota: tu das cursos?
Hola María Elena.
Suponiendo que tienes los modelos de Hong Kong están en una hoja llamada «Hong» y los modelos que manejas en EEUU tienen una hoja «EEUU», y que el modelo está en la columna A de cada hoja, puedes poner esta fórmula en la hoja de EEUU, en una columna que esté en blanco:
=IF(ISERROR(VLOOKUP(A:A,HONG!A:A,1,0)),»Falta»,»Si está»)
=SI(ES.ERROR(BUSCARV(A:A,HONG!A:A,1,0)),»Falta»,»Si está»)
Sí doy cursos, principalmente en Baja California. ¿En dónde está usted?
Hola Armando, queria ver si me puedes ayudar en lo siguiente.
tengo 2 documentos separados 2 tablas, necesito que en la primera al introducir cierto numero de parte me arroje el nombre del numero de parte esto en la tabla 1, pero en la tabla 2 tengo el nombre y el numero, lo que quiero es saber como arreglar la funcion Vlookup ya lo he hecho pero con carpetas dentro del mismo documento no con un documento independiente.
mi necesidad es que me lo determine al solo introducir el numero en la tabla 1 lo busque en la tabla 2 y aparesca.. de antemano gracias por tu tiempo.
¿Qué versión de Excel maneja, Manuel? Pregunto porque a partir de la versión 2007 se puede crear una tabla, de manera que al escribir al final de la tabla la fórmula se copia automáticamente. La tabla se crea en Insertar – Tabla o también oprimiendo Ctrl – T.
Hola buen dia.
Me gustaria saber como realizar formularios que puedan alimentar bases de datos en excel y access.
Trabajo manejando informacion de varios departamentos y me toca hacerla de forma manual. Me gustaria manejar una plantilla que actualice cada persona y esto alimente la que yo manejo. Gracias
Hola Ángel.
Si se usa Access, se puede capturar la información directamente ahí y luego usar la funcionalidad de Data – External Data de Excel para hacer la conexión y extraer los datos de Access.
Saludos.
Armando.
hola buenas noches, estoy teniendo problemas con la aplicación VLOOKUP en un formulario. me podrias dar un ejemplo sensillo de como armar el código en visual basic para usar esta aplicación. desde ya muchas gracias.
Hola Ale.
No estoy seguro de entender la pregunta. Así se crea la función en VBA:
ActiveCell.FormulaR1C1 = «=VLOOKUP(RC[2],R1C4:R13C14,3,0)»
Esta fórmula busca la segunda columna (B) del renglón 1 al renglón 14 de las columnas D a la M, regresa la tercera columna y es exacto.
¿Resuelve esto la duda?
Hola buenas tardes,
Armando quiero usar la funcion de Vlook up, pero cuando en el campo de Table_array busco la tabla para que pueda comparar y traer la informacion que necesito, no trae nada. Trate de cambiar los formatos de celdas pero tampoco funciono. Como puedo solucionar este problema. Gracias anticipadas por su ayuda.
¿De qué tipo son los datos buscados? ¿Texto, fechas, números?
GRACIAS POR TU CONTRIBUCION COMPADRE, ME SIRVIO MUCHO.
SALUDOS
Ayuda pf tengo tablas dinamicas que se estan actualizando dia a dia y arrojan nuevos totales cada vez, lo que quiero hacer es un informe ejecutivo para la dirección generla, en el que no vean la tabla dinamica pero si en un solo reporte por ejemplo a) total de ventas al dia de hoy, o al mes anterior o al trimestre B) de este total tanto es de venta a cliente «x» y tanto a cleinte «y»,etc) Ojo tanto la venta a «x» como a «y» salen a su vez de otras dinamicas y asi tengo una serie de información que se va actualizando como la utilidad por cliente, ciertos gastos especificos etc y quiero reportar mas ejecutivamente.
Tengo una hoja q consolida la información pero al buscar q sea mas detallada a preguntas concretas se me esta complicando.
Las preguntas q hace la dirección recirrente mente son cuanto vendi cuanto vendi a «x» cuanto gano con «x» cuanto gaste esta semana, cuanto debo pagar de comison, cuanto he pagado de comision cuanto me falta porpagar de las comisuiones etc. son en total como unas 25 pregunta s o cifras q se necesitan informar a la dirección general de la empresa pudiendo ser por semana o mes o acumulado desde inicio del mes a la fecha.
Lo que he hecho es de la base de datos (libro de excel) hacemos las tablas dinamicas q me dan la información que luego se consolida en otro libro excel, asimismo por los gastos y las comisiones y se consolida pra informar en ese consolidado, pero me gustaria hacerlo mas ejecutivo he pensado en un boton que dijera ventas de la semana, (del mes, o venta acumulada a la fecha) y asi llegar a tener puros botones en el informe, cada boton etiquetado y a su lado la cifra.
Espero no haberte confundido y agradecria tus consejos q DIOS t bendiga de antemano gracias
¿Qué versión de Excel manejan, Francisco? Pregunto porque a partir de 2007, si los reportes son repetitivos, se puede usar la función SUMIFS / SUMAR.SI.CONJUNTO con las columnas completas. Admite hasta 127 pares de condiciones, y me gusta más que GETPIVOTDATA / IMPORTARDATOSDINAMICOS, copiar y pegar los datos nuevos y que Excel los actualice en automático.
Para los botones me gusta usar hipervínculos, porque a diferencia e los botones de las macros, siempre se activan.
Si las preguntas cambian a cada rato, lo más fácil sería enseñarles a usar tablas dinámicas (lo cual no suele ser una opción) o tener a un experto contestando las preguntas todo el tiempo.
Espero que este comentario resulte útil.
Gracias mil lo voy a intentar con tu recomendación ya q es excel 2007, q DIOS t bendiga
Me mate tratando de usar esta funcion, hasta que me di cuenta que para que funcione correctamente se necesita ordenar alfabeticamente la columna 1
En Excel 2007 y posterior se tiene que ordenar cuando si no encuentra el valor regresa uno anterior (el cuarto parámetro es VERDADERO, TRUE, un número diferente de cero, o se omite).
Si es con búsqueda exacta, entonces no tiene que estar ordenado, aunque tampoco hace daño.
Yo antes tenía la idea de que siempre tenía que estar ordenado. ¿Qué versión de Excel maneja?
Gracias por el comentario
Hola Marco
Tengo una matriz de 12×1800 datos (números), y para cada columa necesito encontrar un valos que satisfazga una condición es posible haerlo con este comando?…Agradecería mucho tu ayuda..
Saludos
Felipe
Hola Felipe.
Necesitaría más detalle. Puedes buscar con Vlookup, Match, Choose, fórmulas de tipo array. ¿podrías incluir un ejemplo o mandarme un archivo para verlo?
Saludos
Buenas tardes,
Tengo que hacer una comparativa de dos tarifas de un proveedor nuestro (la de 2013 con la de 2012). Estas dos tarifas se componen de codigos articulos (unos identicos y otros nuevos y/o descatalogados) con su descripcion y su precio. Estan en dos libros Excel diferentes. Intento aplicar la formula BuscarV para poder hacer la comparativa en una misma hoja Excel de las dos tarifas pero me sale #¡REF! o #N/A. Y no veo donde esta el error. Cuando despliego el mensaje de error, me pone la leyenda siguiente: error de referencia de celda no valida.
Muchas gracias por su ayuda.
Un saludo.
Hola.
El error #REF se produce cuando seleccionamos buscar en las columnas A:C, por ejemplo, y pedimos que nos regrese la columna 4. Como solamente está buscando en tres columnas, la referencia es inválida.
También se puede producir cuando le indicamos que busque en un rango, y luego borramos la columna del valor buscado.
El error #N/A quiere decir que no lo encontró. El código de artículo puede verse idéntico, pero pueden ser distintos por estas razones:
a) Uno es texto y el otro número.
b) Uno tiene espacios de más y el otro no.
c) Una fecha es texto y la otra numérica.
d) Una fecha tiene horas y la otra no.
Si copia la fórmula que produce el error #REF aquí, podemos ver cuál es el error.
Saludos.
Armando.
Buenos dias,
Gracias por su respuesta.
Le copio aqui la formula aplicada: =BUSCARV(E2:E3739;’Y:\karen\TARIFAS PROVEEDORES\2012\[Tarifa ZODIAC 2012 COMPLETA.xlsx]Hoja1′!E$2:E$3366;10;0).
Otra vez, gracias por su ayuda.
Un saludo.
Buenas tardes,
Ya he encontrado mi error, está solucionado todo! Muchas gracias por su ayuda!
Me da mucho gusto. Una disculpa porque ayer estuve ocupado y no tuve chanza de revisar los comentarios.
Saludos.
Armando.
Hola, Armando
Tengo un libro con varias hojas. En las hojas hay información organizada en forma de base de datos (cada columna un campo, cada línea un registro). La idea es que la Hoja2 tiene establecida una relación con la Hoja1 mediante una columna Código. En Hoja1 este código es único (no puede existir repetido) pero en la Hoja2 puede haber varios registros con el mismo Código.
He construido un form con Multipage y otros controles. Lo que necesito es cargar un Listbox con el contenido de uno o varios registros, dependiendo de los que se encuentren en la Hoja2 que contengan el mismo valor que tenga en la actualidad el textbox1. En caso de que no existan registros en Hoja2 con el código que contenga actualmente textbox1, la Page 3 del Multipage, cuyo único contenido es el Listbox, será visible = false.
Espero que puedas ayudarme.
Gracias y un saludo
Hola Julio.
Acabo de hacer un artículo que seguramente responderá tu pregunta. Está en http://www.auval.com.mx/notas/como-llenar-un-control-de-tipo-lista-en-base-a-un-cuadro-de-texto/.
Saludos.
Armando.
Estimado
Tengo una tabla en la que la celda que busco es un codigo y se repite varias veces en varias filas y la celda que debo buscar son varios varoles, y el resultado debe ser la suma de estos valores en una celda en otra hoja
Saludos
Marco
Hola Marco.
Como el resultado tiene que ser la suma de estos valores, te convendría utilizar la función SUMAR.SI.CONJUNTO o SUMIFS. ¿Qué versión de Excel manejas? Si tienes la versión 2003 o anterior, tendrás que usar SUMIF o SUMAR.SI.
Saludos.
Armando.
Estimado Armando, buenas noches.
Espero aún estés respondiendo preguntas.
Bueno, he dejado dos planillas de lados ya porque no he podido solucionar mi problema.
Creo que a traves del BUSCARV debería solucionarlo, pero espero me orientes…
tengo una planilla de salas de una universidad, separado por media hora, todo el día para saber si están ocupadas o no. Lo que no he podido hacer es en otra hora preguntar para que en un horario de cada media hora también me muestre el nombre del curso que se está ejecutando.
Espero me puedas ayudar.
Hola Ludwig.
Puedes hacerlo con un VLOOKUP que tenga la hora de inicio de cada junta. A la hora que termina tiene que estar la hora de fin y decir «libre».
El chiste es que al final le agregues que es una búsqueda aproximada.
Si me mandas el archivo a afranco@auval.com.mx puedo mandar una sugerencia.