Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Uso de WorksheetFunction.Vlookup

| 13 comentarios

La función "VLookup" es lo que se conoce en el Excel como "buscarv", la cual nos permite encontrar un valor determinado en una base de datos.

Sin duda es de mucha ayuda puesto que permite buscar un valor determinado que está en la primera columna y aplicando el “.vlookup” permite devolver un valor de la misma fila del dato buscado pero que se encuentra en otra columna.

Por ejemplo:

eq Uso de WorksheetFunction.Vlookup

Por ejemplo, en esta base muestra diferentes códigos de corredores de seguros, su nombre y el producto  que venden.

Para el presente ejemplo,queremos saber el nombre del corredor. Para esto la búsqueda será de la siguiente manera.

Sintaxis: expression.VLookup(Arg1, Arg2, Arg3, Arg4)

Los argumentos de a sintaxis son los mismos a los de la función buscarv

A continuación, se presenta la formulación en VBA de esta fórmula: 2 300x187 Uso de WorksheetFunction.Vlookup            

(Para mayor visualización de la imagen, hacer click en la misma)

Asimismo, esta imagen muestra la fórmula tras utilizar el grabador de macros.

31 300x187 Uso de WorksheetFunction.Vlookup            

(Para mayor visualización de la imagen, hacer click en la misma)

 

13 comentarios

  1. Cual seria el codigo para buscar un numero y devolver un texto

  2. Buen trabajo de búsqueda. con respecto a los argumentos de Formula R1C1. me gustariá que utilizara referencia a variables calculadas en los argumentos de la función.

  3. La utilizacion de la busqueda utilizando macros es bastante util, ademas hay otros comandos de busqueda como el hlookup y el Lookup, los cuales sirben para la busqueda en fila y solmente busqueda.

    La expresiones del excel seria:
    expresión.Lookup(Arg1, Arg2, Arg3)
    para el caso de fila: busca un valor en la fila superior de una tabla o una matriz de valores y devuelve un valor en la misma columna de una fila especificada en la tabla o matriz.

  4. No he podido probar esta función, me parece muy interesante para trabajar con base de datos en Excel 2010 y poder realizar búsquedas dentro de la misma.

    He realizado la copia del las sentencia VBA y me muestra el siguiente mensaje: error de compilación, el procedimiento externo no es válido.

    Agradezco su apoyo.

  5. Esta herramienta es muy parecida a =consultav muy util para trabajar con las bases de datos y crear tus reportes.

  6. Lo probé con grabador de macros, así
    inicio de grabación
    menú Excel + formulas + búsqueda y referencia + función BuscarV
    lleno el formulario y doy aceptar
    detener grabador
    editamos la macro y es similar al ejemplo,
    Sirve esta macro al modificarla. Util

  7. esta función es realmente útil. En EXCEL me tomó un poco dominarla, sin embargo, con VBA existen muchas mas posibilidades. Por ejemplo, cuando no solo se quieren buscar datos en una columna, sin en varias, de modo que se podrian encontrar filas con datos que coinciden (como en busqueda de bases de datos en access).

  8. Buenas noches, me gustaría que me ayudaran si es posible, en crear una macro que verifique los datos en una columna y ejecute la macro, pero que cada vez que agregue un dato nuevo a la columna se ejecute automáticamente, por ejemplo en la hoja 1 tengo la matriz de datos a buscar (A1:F500), en la hoja 2 están los datos que quiero buscar en la columna 1 (A1:A5000) me gustaria que la macro buscara en la hoja 1 y en la hoja 2 mostrara los datos, si no los encuentra coloque en la celda "ERROR: NO ESTA EN BD", esto lo debe hacer en la columna 2 y 3 de la misma fila, pero al agregar un dato mas a la columna 1 la macro se ejecute y actualice la hoja.

    Saludos.

  9. como puedo restar un cantidad repetida en una columna, pero que hacen referencia a otra columna ?

  10. Este modelo no muestra el botón de comando, ni textbox, es decir quisiera saber como se asignan a la macro los botones; en el textbox1 ingresar código y en el textbox2 que arroje el resultado de la búsqueda, con un comand buton de buscar, solo veo que es un módulo pero no va funcionar por que ni siquiera hay los msgbox para el resultado.

  11. Buen día tengo un problema tengo una macro con el codigo vlookup funciona corectamente, pero lo que me falta que realize la macro es unirla con otra funcion de hiperlink , pues tengo una base de datos que a ciertas celdas tienen vinculos peor al momento de mandar a llamar los datos de mi BD no me respeta los vinculos

  12. Hola quisiera que alguien me ayudara. Tengo un UserForm con varios TextBox y un CommandButton necesito un código que busque información al dar click plasmada en el TextBox1 (N° de parte) en una base de batos y que me arroje la información de que se encuentra sobre la fila del dato buscado

  13. Alguien que me pueda auxiliar estoy atorado con esto... Gracias

    Lo que intento hacer es que no se repitan los datos ingresados en el TextBox4, los busque en Hoja3 SALIDAS y si lo encuentra me de un MsgBox y cierre el userform3

    La verdad no tengo idea en que parte esta mal ya busque en varios lados y muchos tienen sintaxis similares a las que tengo y les funciona con la excepción de que yo uso un textbox y en otros casos usan combobox
    La sintaxis está dentro del TextBox4_change

    Private Sub TextBox4_Change()

    Tx4 = UserForm3.TextBox4
    Vlook = Application.WorksheetFunction.VLookup(Tx4, Hoja3.Range("D:D"), 1, 0)

    If Vlook = Tx4 Then
    MsgBox " Dato ya dado de baja", vbInformation, "DADO DE BAJA"
    UserForm3.Hide
    End If

    End Sub

Deja una respuesta

Los campos requeridos estan marcados con *.