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 231-0179 o escríbanos a cursos@auval.com.mx.

Armando Franco © 2011

Compartir
Acerca de

Armando Franco tiene amplia experiencia en las áreas de sistemas, compras y proyectos. Cuenta con una Maestría en Administración de Tecnologías de Información, y las certificaciones Certified Purchasing Manager, Microsoft Office 2010 Specialist, Expert y Master.

Publicado en Excel, Tecnología, Computación y Sistemas Etiquetado con: , , , , , , , ,
225 Comentarios en “Guía rápida para usar VLOOKUP, BUSCARV, CONSULTAV.
  1. Fernando dice:

    Hola Armando

    Quiero usar el vlookup en una macro, pero el valor a buscar y el valor resultado están en otra hoja de excel distinto a donde quiero el resultado, me podrías ayudar con la formula para buscar en otra hoja por favor.

    Saludos

  2. Libia dice:

    Hola Armando,
    Mi nombre es Libia. estoy comparando 2 bases de datos y me tropece con el dilema de que me devuelve unos valores y otros no. Encontre el problema y es que la base que consulto (para completar la mia) contiene espacios en los textos de las celdas por lo que mi formula no los reconoce. si hago una busqueda manual y sustituyo el texto funciona pero la base contiene mas de 5000 celdas de informacion lo cual me tomaria mucho tiempo arreglar, Mi pregunta es: si hay alguna funcion de excel que me permita sustituir los valores por los correctos en un rango, por ejemplo “eliminar espacio” o reescribir el texto.

  3. Adriana Escobar Rangel dice:

    Buenos dias, Tengo un listado con numeros de parte que se repiten en caso de contener mas componentes, ese listado lo quiero relacionar con otro y que el numero de parte me despliegue todos los componentes que encuentra por numero de parte, he estado usando el velookup, pero solo me encuentra un componente. Podria decirme que otra formula puedo usar.

  4. Anita dice:

    hola tengo la siguiente inquetud, en una tabla de datos almaceno por empleado, por día , por mes, las horas trabajadas.
    hay dias que cargo horas (números) y otros días cargo ausentismos( letras)
    En un informe tengo que expresar las horas trabajadas por día por empleado o bien que me traiga el motivo de la ausencia, qué formula utilizo?

    • Si las únicas columnas son empleado, día, mes y horas trabajadas, se puede hacer una tabla dinámica (o pivote).

      Hay que ir al menú de Insertar – Tabla Dinámica.

      Colocamos el empleado en los renglones, y el mes también.

      Colocamos en los valores las horas.

      Damos click derecho sobre las horas y seleccionamos que las resuma por suma.

      Este reporte da las horas trabajadas.

      Vamos a los datos originales.

      Hay que ir al menú de Insertar – Tabla Dinámica.

      Colocamos el empleado en los renglones, y el mes también.

      Colocamos los valores en las columnas. Quitamos los que sean numéricos usando el filtro.

      Colocamos en los valores las horas.

      Damos click derecho sobre las horas y seleccionamos que las resuma por conteo.

      Este reporte da las faltas por empleado, por tipo.

      Sería más fácil si las horas y la letra fueran en dos columnas distintas.

  5. Isabel hernandez dice:

    Hola. Qusiera hacer un Vlookup de dos libros pero mi busqueda contiene numeros y letras 0066000001k9PRlAAM cuando hago la formula me da una busqueda diferente me lo mezcla con minusculas (por ex.0066000001k9PRlAam) q otra funcion puedo usar que sea Sensitive a mayusculas y minusculas?

    • Hola Isabel.

      Necesitas una fórmula matricial, porque el VLOOKUP no distingue maýusculas y minúsculas.

      Si tu VLOOKUP fuera así:

      =VLOOKUP(A2, Sheet2!A1:C3, 3, 0)

      La fórmula matricial sería esta:

      =INDEX(Sheet2!C1:C3,MAX((EXACT(A2,Sheet2!A1:A3))*ROW(Sheet2!A1:A3)))

      En lugar de Enter, tienes que oprimir Ctrl Shift Enter al terminar para que funcione.

  6. Fernando dice:

    Buena tarde Armando,

    Ojala puedas ayudarme, tengo dos hojas en el mismo libro, trate de buscar datos de la primera en la segunda, y solo me arroja algunos datos de manera correcta, lo demás me pone #N/A hice la busqueda manual copiando y buscando en la primera los valores y si aparecen.

    Realice un ejercicio a la inversa, trate de buscar en la hoja dos valores de la hoja uno y ahora me sale invertido, los datos que me arrojaba correctamente en la búsqueda de la hoja anterior me salen #N/A y aquellas que me salia este error si los encuentra. ¿Sabras que puedo estar haciendo mal?

    Ya trate de darles formato de numero a todo, formato de texto, copiar estilo y no se corrije

    Agradezco tu respuesta

    Saludos

    • Selecciona la columna de los datos de la hoja donde los vas a buscar.
      Usa datos – texto en columnas – ancho fijo.
      Revisa que no haya ninguna división.
      Termina.

      Repite con la columna que vas buscar.

  7. Carolina dice:

    Hola Armando, consulta.
    Tengo dos tablas en donde tengo campo N°Doc y Rut y necesito aplicar una formula donde pueda validar que el documento con el rut asociado en la lista A se encuentra o no el la lista B donde estan ambos campos.
    Si ambos campos son iguales esta OK , sino que me de Error.

    Mil gracias por la ayuda.

  8. Gael dice:

    Buen día, excelente página. Tengo una pregunta:

    Tengo 2 archivos de excel uno “A” y el otro “B”, como puedo usar el vlookup para mandar a buscar datos en el archivo “B”, y los escriba en el archive “A”. No logro formar correctamente la estructura. Gracias

    • =VLOOKUP(lo que busco, dónde lo busco, qué columna tiene lo que quiero ver, 0)

      lo que busco = celda en el archivo A que tiene el valor que buscarás en el archivo B.
      dónde lo busco = columnas del archivo B, empezando por la que tiene el valor que estás buscando.

  9. Evelyn dice:

    Hola Armando; tengo dos base de trabajo que vienen de programas diferentes y necesito llevar dos valores de una base a la otras.
    Intenté VLOOKUP, pero me trae solo un valor.
    Base 1 tengo Razón social, fecha de creación, código interno, tipo de registro y otras
    Base 2 tengo Razón social, fecha de emisión, nombre emisor, categoría, BS y otras; necesito llevar la fechas de emisión y el nombre emisor a la Base uno y lo que une ambas bases es la Razón social, me puedes ayudar.
    Es primera vez que veo tu página y doy gracias porque existe y seas tan amable y dispuesto a ayudar.

  10. Pablo dice:

    Hola Armando. Se puede usar el vlookup y obtener el menor de los valores encontrados?
    Gracias

    • Hola Pablo.

      Suponiendo que tengo una columna B con el número de cliente, puedo usar =MIN(B:B) para obtener el número de cliente más pequeño.

      Si quisiera el nombre de ese cliente, y el número de cliente está en la columan C, usaría:

      =VLOOKUP(MIN(B:B),B:C, 2, 0)

      Esto me daría el nombre de ese cliente.

      Saludos.

  11. hands dice:

    =VLOOKUP(D3,INDIRECT(E2),15,0) porque esta frmula si le pongo false me arroga N/A y si le pongo true me arroja un valor..

  12. Catalina dice:

    Buenas tardes, tengo excel 2013 y necesito aplicar la función vlookup, que función es la que puedo ocupar? ya que no tengo la funcion consultaV, y al aplicar la funcion buscarV me sale #N/A, pues necesito buscar letras

    es decir necesito que me busque por ejemplo A en una matriz y que de esa matriz me tire el valor de la columna 4

    Agradesceria la ayuda!

    • La función BUSCARV es la correcta. Cuando dice #N/A es que no encontró la letra.

      Para buscar la letra A en las columnas de la B a la E y traer lo que está en la cuarta columna se escribe así la fórmula.

      =buscarv(“A”,b:e, 4, 0)

  13. Esteban dice:

    TENGO UN LISTADO…EN LA COLUMNA “A” SON ARTÍCULOS,COLUMNA “B” DESCRIPCIÓN, QUIERO BUSCAR EL ARTICULO Y TOMAR SU DESCRIPCIÓN,PERO LA FORMULABUSCARV NO ME FUNCIONA, CREO QUE POR QUE VARIOS DE MIS ARTÍCULOS SE REPITEN…
    ES DECIR A001 NENEA 15 YO QUIERO BUSCAR EL ARTÍCULO Y
    A001 NENEA 10 QUE TOMAR SU DESCRIPCIÓN
    A001 NENEA 5

    • BUSCARV traerá siempre el primer artículo que encuentra. Si hay repetidos los ignora. Hay que buscar la manera de hacer que cada artículo tenga una clave única, de manera que también la descripción sea única.

  14. Laura Emilia Jacobo dice:

    Hola Armando,Estoy intentando usar la formula para:
    Buscar un numero en un rango de valores, con la finalidad de que la formula me arroje el valor correcto dependiendo.
    Por ejemplo:
    50 a 100 son 500 minutos,
    101 A 150 Son 1000 minutos,Entonces si tengo 70 cual le corresponde.

    Gracias,

    • Esta fórmula recibe cuatro parámetros:
      – Qué busco.
      – Dónde lo busco.
      – Qué columna tiene el valor que necesito.
      – Si es búsqueda exacta (0 o falso) o búsqueda aproximada (1 o verdadero).

      Necesitas poner un 1, VERDADERO o TRUE en el último parámetro.

  15. Cristina Gomez dice:

    Buenas noches.. me podrias ayudar con la siguiente pregunta: En excel cuales son los para realizar un VLOOKUP. Gracias

  16. Isaac Escalante Sedano dice:

    hola, podrias ayudarme?
    tengo una base de datos con los registros de alumnos que realizan un cuestionario. los alumnos lo realizan en mas de una ocasion.
    deseo crear una hoja de consulta en la que pueda verificar cuantas veces el usuario ha realizado el test y cual ha sido el resultado en cada caso…muchas gracias por tu apoyo
    te incluyo la liga para muestra.
    –https://docs.google.com/spreadsheets/d/1YpjRilFgC4iN9cZ3350Z1T-weLV0hC8nOfvbuGIK6do/edit?usp=sharing–

  17. Alejandro dice:

    Armando

    tengo una columna de 5 celdas, donde la primer celda es la fecha. mediante la fecha que ponga deseo traerme de una tabla anual los 5 valores distintos que hay por día, estos valores se pueden repetir hasta 10 veces, pero solo quiero uno de cada uno, como si fuese un filtro.

  18. jessy dice:

    Hola Armando,

    Tengo la siguiente formula
    =(+HLOOKUP($A2,$K$2:$GI$73,2,FALSE)+HLOOKUP($A3,$K$2:$GI$73,2,FALSE)+HLOOKUP($A4,$K$2:$GI$73,2,FALSE)+HLOOKUP($A5,$K$2:$GI$73,2,FALSE))/4

    La formula busca el valor en otra hoja y la fromula la tengo que repetir hacia abajo en muchos renglones cambiando el numero 2 por el 3,4,5 y asi consecutivamente. Como puedeo hacerle para no tener que hacerlo manual.

  19. CARLOS ENRIQUE dice:

    BUENAS NOCHES AGUIEN DE USTEDES TIENE UN CURSO EN PDF DE EXCELL AVANZADO DONDE VENGA EXPLICADO TABLAS DINAMICAS Y LA FUNCION VLOOKUP…..SE LOS AGRADECERIA BASTANTE……

  20. Silvia dice:

    Buen día, quisiera saber como puedo que en vez de resultado Falso me indique lo que en la misma linea que encontró la coincidencia me ponga el dato de otra columna.

    • Hola.

      Si tienes

      =VLOOKUP(A1,B:C,2,0)
      =BUSCARV(A1,B:C,2,0)

      Y quieres que si no lo encuentra haga

      =VLOOKUP(A1, X:Z, 3, 0)
      =BUSCARV(A1, X:Z, 3, 0)

      Usa

      =IFERROR(VLOOKUP(A1,B:C,2,0),VLOOKUP(A1, X:Z, 3, 0))
      =SI.ERROR(BUSCARV(A1,B:C,2,0),BUSCARV(A1, X:Z, 3, 0))

  21. Juan dice:

    Buenas Noches Armando que tal, tengo dos celdas en excel 2010, la cual tengo que comparar una y la otra ejemplo:

    Si la celda A (4) > B (3) o la celda B (3) > A (4), entonces se escoge la que sea menor para calcular un %. Esta condición tiene que hacer dentro una misma celda. Muchas Gracias.

  22. jorge luis hdz dice:

    buenas tardes tengo un problema con excel no soy experto y necesito de su soporte tengo una base de datos de la siguiente manera
    JOB ID DE L STENCIL LOCALIDAD
    14F292 B06-B-ALC4-3JR37511ACAA-REV.A-E1 A1
    14F292 B06-T-ALC4-3JR37511ACAA-REV.A-E1 A2
    14F293 B06-B-ALC4-3JR37509ACAA-REV.A-E1 A3
    14F294 B06-T-ALC4-3JR37509ACAA-REV.A-E1 A4
    14F290 B06-B-ALC4-3JR37507ABAA-REV.A-E1 A5
    14F289 B06-T-ALC4-3JR37507ABAA-REV.A-E1 A6
    14F297 B06-T-ALC4-3JR37501ADAA-REV.A-E1 A7
    14F298 B06-B-ALC4-3JR37501ADAA-REV.A-E1 A8
    14F296 B06-B-ALC4-3BK50004ACAA-REV.A-E1 A9
    14F295 B06-T-ALC4-3BK50004ACAA-REV.A-E1 A10

    que funcion puedo utilizar si necesito que cuando yo ponga un id de un stencil me arroje la localidad en la que esta ??? pero necesito que cada vez que yo meta un id diferente en la misma formula se siga actualizando sin necesidad de estar creando la formula cada vez que necesite eso es posible???

    • ¿Me pudieras dar por favor un ejemplo más detallado?

      Suena como a poner un auto filtro en la tabla y filtrar por un número de stencil ¿no?

      El filtro se pone seleccionando los datos y yendo a Datos – Ordenar y filtrar – Autofiltro / Data – Sort and filter – Autofilter.

  23. Antonio dice:

    Hola,

    Tengo que buscar distintos valores para fines comparativos, lo hago a través de una validación de datos(elijo entre varios estados por ejemplo), cada uno de ellos tiene su propia tabla y para facilitar la tarea y no trabajar con rangos le asigné un nombre a cada tabla.
    Usé la siguiente fórmula:
    =VLOOKUP(A7,$E$3,4,0)
    En la celda E3 está el nombre de la tabla en la que debe buscar el valor (que se obtuvo con un vlookup previo de una tabla con dos columnas: Estado|Nombre de la Tabla)
    Esta fórmula me arroja error, y con F9 sobre E3, me percaté de que me arroja el nombre de la tabla entre comillas.
    ¿Qué puedo hacer para no meter muchos “if” dentro del vlookup?

  24. Aron dice:

    Por casualidad -como es costumbre en la web- conoci hace 5 minutos este sitio. En general los Chat que he visto en otras webs no estan activos o son de fechas antiguas. Veo aca con sorpresa que este chat tiene fecha reciente por lo que entiendo esta vigente. Yo si bien no me considero “experto” en excel pues uno nunca termina de aprender, si me considero ingenioso con varias funciones y he podido desarrolllar varias bases de datos en mi trabajo como ingeniero civil, mas aun, dibujos y esquemas tecnicos los hago igualmente en excel. Me gustaria guardar este Chat por si en el futuro preciso de algun aporte o si puedo yo tambien aportar en algo. Soy latino aun cuando no vivo en latinoamerica. Un saludo a la distancia.

  25. LUCIA dice:

    Hola Buenas Tardes.

    tengo dos bases de datos y quiero conciliarlas para sacar diferencias

    son dos bases una de un proveedor y otra de la empresa en ambas se manejan con un numero de cliente en comun en ambas bases, que formula necesito para ver que el numero de cliente aparece en ambas

    • Armando dice:

      Hola Lucía.

      Puedes copiar el número de cliente de una base de datos a otra hoja. Luego copiar la lista de números de cliente de la otra base al final de esta hoja nueva. Seleccionas toda la columna, vas a Datos – Herramientas de datos – Eliminar duplicados y después haces VLOOKUP / BUSCARV para comparar esta lista única que te quedó con las dos bases de datos.

  26. Jorge dice:

    Hola, existe la posibilidad de que en determinada tabla, digamos con 6 columnas, encuentre determinado valor, por ejemplo ID, y me regrese el renglón completo de la información?

    Saludos y gracias

    • Hay que repetir 5 veces la función, cambiando la columna que queremos.

      También se puede hacer así:
      – Seleccionamos las 5 celdas que queremos llenar en un renglón. Por ejemplo, B2:F2.
      – Escribimos esta función:

      =BUSCARV(A2, Tabla, {2,3,4,5,6}, 0)
      =VLOOKUP(A2, Tabla, {2,3,4,5,6}, 0)

      – Oprimimos Ctrl Shift Enter.

      Esta es una fórmula matricial. Hay que copiar siempre las 5 celdas completas.

  27. christian dice:

    buen dia mira tengo el siguiente macro

    ActiveWindow.SmallScroll Down:=45
    Range(“C56”).Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows(“LISTA MAESTRA DIBUJOS DE COMPONENTES.xls”).Activate
    Columns(“B:B”).Select
    Selection.Find(What:=”-v5″, After:=ActiveCell, LookIn:=xlFormulas, _
    LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False).Activate
    mi problema es que cuando le meto otros datos me sigue apareciendo los mismos por el find que me ti el problema es que no puedo hacer que cambie el find

    ayuda porfa

    • Se pudiera cambiar de esta manera el ”-v5″ por INPUTBOX(“Filtrar por esto”)

      De esto:

      Selection.Find(What:=”-v5″, After:=ActiveCell, LookIn:=xlFormulas, _

      Pasamos a esto:

      Selection.Find(What:=INPUTBOX(“Filtrar por esto”), After:=ActiveCell, LookIn:=xlFormulas, _

      Así preguntará qué buscar.

  28. GUSTAVO VAZQUEZ CORDOBA dice:

    Hola armando franco veo q sabes mucho la verdad es algo q cuesta aprender y hay que quemarse mucho las pestañas, tengo un archivo en el cual tiene 3 bases de datos y desde cuando eh querido aprender visual y macros para poder hacer en una hoja el formulario o no se como se le llame para que en esa hoja consulte y me mande la informacion que por logica va a jalar de las bases de datos..

    • Gracias por tu comentario, Gustavo. Suena a que necesitas hacer un VLOOKUP que tome información de varias bases de datos y lo pegue en una, pero necesitaría más información para entender bien qué necesitas.

      • GUSTAVO VAZQUEZ CORDOBA dice:

        Gracias armando por tomarte el tiempo de leer mi ayuda la verdad lo que en si es q me gustaria aprender a hacer ese tipo de proyectos pero todo con calma ya vere la forma de tomar un curso o buscar manuales online, podrias mandarme tu correo para mandarte el archivo??

  29. Liliana dice:

    Buenas tardes!
    Tengo 4 columnas en cada una de ellas hay un status diferente en cada celda se llena la fecha dependiendo de la fase en la que se encuentre. Quiero saber como obtener el status dependiendo de la ultima fecha que se haya capturado en la fila…
    Ejemplo:
    Si un ticket esta en registro solo tiene llena la fecha en la columna de registro si un ticket se encuentra en asignado tiene llena la fecha de registro y la de asignado pero en la nueva columna que voy a creas solo quiero me despliegue el ultimo status que sera la ultima fecha que tengo llena

  30. Facundo dice:

    Consulta, quiero hacer una búsqueda de un código y que me traiga todos los registros que están asociados a ese código, no solo el primero. ¿Cómo puedo hacer? Hay alguna manera de hacerlo? la fórmula vlookup solo me trae el primero….

    • En tu hoja original, suponiendo que el dato que buscas está en la columna B, necesitas poner esta fórmula en la columna A, en la celda A2.
      =b2 & countifs($b$2:b2,b2)
      =b2 & contar.si.conjunto($b$2:b2,b2)

      Esto te dirá cuántas veces se repite el número.

      En la hoja donde buscas, busca pegándole &row(a1) a los datos buscados.

      Me dices si te funcionó.

  31. Jorge Armando dice:

    Que tal Tocayo,

    espero te encentres muy bien, tengo una duda sobre VLOOKUP , al aplicarlo los datos que me arrojan siempre es el mismo valor (el primero que tomo) para todos, y me doy cuenta que tengo que darle doble click y enter a cada uno para que se actualize, sabes que estoy haciendo diferente ?? por que si antes funcionaba bien ahora ya no??

    saludos y gracias por tu ayuda

  32. Noe dice:

    Necesito pasar de una hoja a otra unas facturas con el mismo numero de factura pero con diferente No de parte en cada renglón, pueden ser 3 o mas renglones de cada factura

  33. sergio perez dice:

    mira estoy haciendo una planilla excel para matricular alumnos ocupo la sigente funcion para buscar alumnos que ya tenga sus datos:

    Public Function Busr(indice)
    bb = Application.WorksheetFunction.VLookup(Sheets(“Hoja1”).Range(“C9”).value, Sheets(“Hoja2”).Range(“A1:h100″), indice, False)
    If IsError(bb) Then
    Busr = ” ”
    Else
    Busr = bb
    End If
    End Function

    la función me funciona pero si cambio el rut no actualiza los datos automáticamente como lo deseo, quiero saber como lo puedo hacer (me urge)

    • No entiendo a qué te refieres con que cambias el rut. Pero la función es para hacer un VLOOKUP de lo que tienes en C9 y regresar el valor de la columna que indice le indica.

      ¿No te serviría igual la función así, sin macro?

      =IFERROR(VLOOKUP(Hoja1!C9, Hoja2!$a$1:$h$100, indice, false),””)

      Nada más cambia el valor de indice por la referencia de celda que le pasas a la función.

  34. Ignacio Castro dice:

    Armando,

    Junto con saludarle quisiera que me ayude con un problema. Realizo la función buscarv sin ningún problema dentro de las hojas de datos, pero al hacerlo de una hoja a otra me entrega N/A. He puesto formato de número en ambas.

    Atento a sus comentarios

  35. Peyton dice:

    Hola Armando, uso mucho la función de vlooup para buscar información entre 2 hojas, la información la extraigo de 2 sistemas diferentes con extensión .csv, esta información la paso a un archivo con extensión .txt y procedo aplicar la función vlooup. El problema que tengo es que en una hoja la función solo la realiza en pocas celdas y en la mayoría de las celdas coloca N/A (pero los datos si están en la otra hoja), y si esta función la realizo en la otra hoja la función la realiza bien; todos los datos de las 2 hojas tienen un formato de texto. Tu sabes a que se debe que en una hoja si me salga la función pero al hacerla en la otra hoja solo la hace en unas celdas y en otras no??

    • Normalmente los problemas de que no encuentra un valor se deben a que un número es número y otro es texto. Si estás buscando textos, puede ser que uno tenga espacios y otro no.

      Si en ambas hojas tienes los datos en A1, haz lo siguiente:
      a) Usa la fórmula =LARGO(A1) / =LEN(A1) en ambas hojas. Si da diferente, el problema son los espacios.
      b) Usa la fórmula =ESTEXTO(A1) / =ISTEXT(A1) en ambas hojas. Si da diferente, uno es texto y otro no.

  36. Eduardo Prieto dice:

    Hola Armando, tengo un problema, Tengo una base de datos con numeros de parte que se repiten, con su respectiva orden de trabajo que siempre es distinta y cada orden de trabajo tiene su cantidad.

    en el momento en que me solicitan una lista de numeros de parte para procesar no encuentro como hacerle saber al VLOOKUP, que si la cantidad solicitada es inferir al primer valor encontrado siga buscando la siguiente hasta encontrar algun valor que sea igual o mayor que la cantidad de la solicitud, y que me muestre la orden de trabajo que cumple con este requerimiento.

    Base de datos
    parte orden cantidad
    P1594 O0001 5
    P4567 O0002 8
    P1794 O0003 5
    P4577 O0004 8
    P1794 O0005 10
    P4579 O0006 8

    Y necesito procesar 10 piezas de la P1794. el VLOOKUP, me encuentra la O0003 y no es suficiente para cubrir el requerimiento, tenia que haber encontrado la O0005.

    • VLOOKUP no puede hacer lo que necesitas. Habría que usar una fórmula matricial.

      Si tienes los datos de A1 a C8, en E2 tienes el número de parte que buscas y en F2 tienes la cantidad, puedes usar esta fórmula.

      =INDEX($B$2:$B$8,MAX(($A$2:$A$8 = E2) * ($C$2:$C$8 >= F2) * ROW($A$2:$A$8)))

      Tienes que oprimir CTRL SHIFT ENTER en lugar de ENTER solo al terminar de escribir la fórmula.

      La fórmula busca en el rango b2 a b8 el renglón más alto donde lo de la columna A es igual a E2 y la columna C es igual a F2.

      Aún con esta fórmula tendrías problemas si tienes dos solicitudes de material, porque no toma en cuenta el material asignado.

  37. carole dice:

    Hola Armando,

    Tengo 1 hoja excel con
    – columna B: código de producto (que entro yo manualmente)
    – columna D: el ultimo nº de edición con la formula:
    =”0″&SUM(E2:H2)&”/100″
    o
    =SUM(E2:H2)&”/50″
    según si es una edición de 50 o de 100.

    En mi hoja 2 tengo:
    – columna B: código de producto (que entro yo manualmente)
    – columna D: el ultimo nº de edición +1 (es decir que si mi ultimo nº es 03/100, pues que el nuevo producto con el mismo código sea 04/100)

    Entre esta formula en la columna D de la hoja 2: =VLOOKUP(B28,Prints!B:D,3,0)

    Me sale el nº de edición correcto pero todos los productos del mismo código cambian a este mismo nº de edición.
    por ejemplo en vez de salir así:
    CH001 “nombre producto” 01/100
    CH001 “nombre producto” 02/100
    CH001 “nombre producto” 03/100
    sale así:
    CH001 “nombre producto” 03/100
    CH001 “nombre producto” 03/100
    CH001 “nombre producto” 03/100

    Muchas gracias y un saludo.

    • Suponiendo que CH001 está en la primera columna, podemos usar una fórmula para contar cuántas veces se ha repetido hasta ese renglón.

      La fórmula, si se escribe en B1, es esta:

      =COUNTIF(A$1:A1, A1)

      Al copiarla hacia abajo dará el valor correcto.

  38. Dulce dice:

    Tengo dos problemas al utilizar formulas, el primero es que hago la formula con la ayuda del sistema (no la tecleo complete si no que voy paso a paso según lo que los cuadros indiquen) y la celda no me arroja el resultado, solo la formula ¿Qué estoy haciendo mal? Esto no sucede siempre.

    El Segundo es que al ingresar los datos para hacer una formula, cuando voy a seleccionar la tabla, no me aparece la barra de ayuda (en la que al seleccionar manualmente la tabla, automáticamente se agrega a la formula la ubicación) tendría que ingresar la información manualmente pero preferiría solo seleccionar la tabla, ¿qué puedo hacer?

    Gracias!

    • Primero: Probablemente la columna tiene formato de texto. Se corrige así:
      a) Borrar el contenido de la celda.
      b) Dar formato general.
      c) Hacer la fórmula otra vez.

      Segundo: Dependiendo de la versión de Excel, se puede dar click en la tabla y oprimir Ctrl Shift Barra espaciadora para seleccionar la tabla rápidamente.

      ¿Funcionan estos tips?

      Saludos.

  39. Juan Carlos dice:

    Hola Buenos Días

    Tengo un formulario en donde a través de un botón hago clic y me llena
    algunos Textbox con vloockup de una pestaña pero al traerme una fecha me la trae con formato de numero siendo que en esa hoja yo tengo esos registros como fecha me podrías orientar.

    Saludos.

  40. edwin.l dice:

    cordial saludo, necesito realizar un BUSCARV pero el resultado que me debe de traer depende del contenido de dos columnas y están en la hoja 1 del libro, por ejemplo el dato de la columna 1 es valle, el dato de la columna 3 es cali y el dato que esta en la columna 7 es Colombia, que me traiga el Colombia siempre y cuando cumpla con las dos condiciones de las columnas 1 y 3….

    gracias

    Edwin Lenis

    • Para hacerlo con BUSCARV hay que concatenar las columnas 1 y 3 en otra columna y realizar la búsqueda sobre estas columnas nuevas.

      Existen las funciones INDICE y COINCIDIR.

      Supongamos que quiero buscar las celdas X1 y Y1 en las columnas A y B y regresar lo que esté en la columna C.

      =INDEX(C:C, COINCIDIR(X1&Y1, A:A & B:B, 0))

      Esta fórmula se introduce oprimiendo al mismo tiempo CTRL SHIFT ENTER en vez de nada más ENTER al terminar de teclearla.

  41. ary dice:

    ¿Cual es la diferencia entre utilizar Index y Vlook up? No hacen la misma funcion?

    • Armando dice:

      Sí hacen lo mismo. De hecho, INDEX se me hace más flexible. Pero es como tomarte una coca cola o tomarte un café para quitarte el sueño, depende de tus gustos.

      VLOOKUP es más famosa, quizá porque es más antigua. Lo voy a investigar.

  42. federico dice:

    tengo dos bases de datos con tres libros cada una, necesito que me ayuden quiero saber como sacar la formula para que me arroge los datos correctos, en mi base2 tengo 600 registros, y en mi base1 tengo 7000 registros necesito saber cuales ya tengo en mi base1 y me me los indique … por favor gracias

    • Armando dice:

      Agregas un VLOOKUP o BUSCARV en la base 2, buscando los de la base 1. Si te da #N/A, es que no están. Los que encuentre son los repetidos.

      Otra manera es copiar nada más los datos que quieres ver si están repetidos. Los pegas abajo de los de la base 2. Seleccionas todas la columna y vas a Inicio – Estilos – Formato condicional – Resaltar – Duplicados. Los que se pongan rojos ya están en la base 1.

  43. Carolina dice:

    Hola, buen día, necesito actualizar la fórmula, ya que no se me actualiza automáticamente. Una vez me dijeron que tenía q presionar ciertos botones, cuáles son?. ,Muchas gracias!

    • Armando dice:

      Seguramente es el botón fx que aparece a la izquierda de la barra de fórmulas, que es donde se ve la fórmula en la parte de arriba de las celdas, arriba de los títulos A, B, C, D…

  44. Dario Cesena dice:

    Hola,
    Muchas gracias de ante mano!

    Tengo que buscar una fecha determinada dentro de un conjunto de fechas que hay en una columna. Utilizo la función Vlookupvalue donde fijo como valor la fecha a buscar, el rango lo fijo donde se encuntra la columna con el conjunto de fechas…pero no hay manera…

    Dim lookupvalue As Variant, value As Variant, lookupRange As Range
    Dim aNumber As Variant

    value = diafinalanalisis

    Hoja9.Activate
    Hoja9.Cells(6, 3).Select
    MsgBox ActiveCell
    Set lookupRange = Hoja9.Range(“C6:C165”) ‘rango donde buscar
    ‘Queremos la columna 1
    lookupvalue = Application.VLookup(value, lookupRange, 1, False)
    ‘Si no encuentra valor finaliza con error 2024
    If IsError(lookupvalue) Then
    MsgBox (“No se ha encontrado el dia final de analisis… Hay algun error…”)

    La variable “diafinalanalisis” tiene el siguiene formao de fecha: “dd/mm/yyyy”…

    No me funciona y me da todo el rato el error 2024. . .
    Perosi le cambio las fechas por nombres… y busco un nombre si que me lo encuentra…

    no se que sucede…

    Muchas gracias.

    • Armando dice:

      Hola Dario.

      Necesitaría ver los datos, pero es probable que los datos donde estás buscando estén como texto y busques fecha, o viceversa. Selecciona la columna y oprime Ctrl-Shift-3 (o sea, Ctrl #). Si las fechas no cambian a formato dd/mm/aa entonces ese es el problema.

  45. joel huerta dice:

    Buen dia¡
    Pudieras ayudarme de favor, necesito poner una formula que me traiga 2 o mas valores de otra hoja, intente con el Vlookup, pero solo logre traer un resultado de una celda, puedo colocar 2 o mas vlookup en la misma celda?
    =VLOOKUP(C595,Sheet1!A2:M7,3,FALSE)es decir si el valor que estoy ordenando buscar se repite en otro renglon, lo puede traer tambien? saludos y gracias de antemano.

  46. ricardo tovar dice:

    necesito una formula para extraer una base de datos bajo un mismo criterio de diferentes pestañas.

  47. Bibiana Paola ZABALA MOLINA dice:

    buenos dias armando

    tengo un pequeño inconveniente necesito consultar lo siguien
    tengo varias celdas llenas ls cuales necesito llevarme informacion para otra hoja pero necesito que la formula me consulte tres caracteristicas la de la celda a,b y c
    quiere decir
    que cuando yo arme mi formula consulte que si la cobertura que esta en a es apoyo x tambien sea extraccion y que sea medicina general o la que comlleve en cada casilla para luego cargarme una cantidad a otra base

    • Armando dice:

      Hola.

      Suponiendo que la celda A2 tiene lo que quieres revisar, la siguiente fórmula da falso a menos que se cumplan las tres condiciones.

      =AND(NOT(ISERR(SEARCH(“Extracción”,A2))),NOT(ISERR(SEARCH(“Apoyo”,A2))),NOT(ISERR(SEARCH(“medicina general”,A2))))
      =Y(NO(ESERR(HALLAR(“Extracción”,A2))),NO(ESERR(HALLAR(“Apoyo”,A2))),NO(ESERR(HALLAR(“medicina general”,A2))))
      Y la que sigue da verdadero si se cumple cualquiera de las tres:

      =OR(NOT(ISERR(SEARCH(“Extracción”,A2))),NOT(ISERR(SEARCH(“Apoyo”,A2))),NOT(ISERR(SEARCH(“medicina general”,A2))))
      =O(NO(ESERR(HALLAR(“Extracción”,A2))),NO(ESERR(HALLAR(“Apoyo”,A2))),NO(ESERR(HALLAR(“medicina general”,A2))))

  48. Victor dice:

    Hola

    Sabes si existe alguna forma en la cual se obtenga el valor de la ultima columna o fila ,sin la necesidad de asignar una referencia en las funciónes Buscarv y buscarh respectivamente?

    Gracias

    • Armando dice:

      Hola Víctor.

      Si quieres saber el valor que tiene el último renglón que no está en blanco de la columna A, del renglón 1 al 18, puedes usar una fórmula como esta:

      =INDEX(A1:A18,MAX(IF($A$1:$A$18<>“”,ROW($A$1:$A$18),””)))

      Oprime Ctrl-Shift-Enter en lugar de Enter a secas, porque es una fórmula matricial.

      ¿Te sirve?

      • Victor dice:

        hola

        Use la siguiente fórmula: si.error(Buscarv(A1;C1:D5;Columnas(C1:D5);falso);Buscarh(A1;C1:D5;Filas(C1:D5);Falso), el problema ahora es que no se como condicionar el si.error para que pinte la celda cuando use el “valor” o el “valor_si_error”

        Gracias

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*