Ejecutar función buscarv dentro de una macro

¿Cómo puedo insertar la función buscarv para que se ejecute dentro de una macro?

1 Respuesta

Respuesta
1
Si que se puede, pero has preguntado algo bastante general, ya que dependerá de la estructura de tu trabajo, si especificas un poco más como lo quieres te podremos ayudar.
Por ejemplo, si quieres escribir un dato en un textbox y que busque en la hoja excel, o si quieres que lo que buscas en un textbox aparezca en un label, etc
Hola,
Gracias por tu respuesta. Necesito que la función se ejecute directamente, pero que esté en una macro, para que en la celda solo aparezca el nombre de la función definida y no toda la función con el rango de la base en cada celda.
Perdona por no haber sido más específico en mi pregunta.
Un saludo
Tienes que usar este procedimiento, te pongo un ejemplo:
Desde A2 hasta A5 tienes nombres y desde B2 hasta B5 tienes apellidos
Pues en B7 aparecerá el apellido correspondiente al nombre introducido en en A7 cuando rellenes A7 y le des al botón de comando.
Private Sub CommandButton1_Click()
range("B7")=application.WorksheetFunction.VLookup(range("A7"),range("A2:B5"),2)
End Sub
Muchas gracias por tu respuesta.
Me vas a matar pero creo que me he explicado fatal. Lo que necesito es crear un función definida por el usuario, que haga lo mismo que BUSCARV, para insertarla en una celda y solo decirle en qué celda esta el dato que tiene que buscar. No sé si esta vez me he explicado.
Gracias por adelantado!
Pues creo que no termino de entenderte, ponme algún ejemplo.
De todas formas, "... que haga lo mismo que BUSCARV" existen dos cosas:
1. BUSCARV
2. Mediante código lo que te puse en el mensaje anterior.
Intenta ponerme un ejemplo y lo dejamos solucionado.
Hola,
Perdona que no haya sido más concreto. Tú código se ejecuta perfectamente y es casi casi lo que quiero, solo por un pequeño detalle. Quiero poder decirle previamente el dato que ha de buscar. Es decir, sería como una versión resumida de BUSCARV. En donde, escribo el valor a buscar en una celda y al hacer clic en la macro me calcula el BUSCARV encontrándome el valor correspondiente. Espero haberme explicado mejor.
Siento mucho las molestias. Aprecio el tiempo que estás dedicándome a ayudarme.
Te he añadido un INPUTBOX al código anterior con el ejemplo anterior, pruébalo y me dices:
Private Sub CommandButton1_Click()
Dim buscando As String
buscando = InputBox("ingrese dato a buscar", "BUSCANDO COSAS")
Cells(7, 1) = buscando
Range("B7") = Application.WorksheetFunction.VLookup(Range("A7"), Range("A2:B5"), 2)
End Sub
Por cierto, si quieres que te devuelva el valor buscado en un mensaje, añade la linea que te puse en negrita:
Private Sub CommandButton1_Click()
Dim buscando As String
buscando = InputBox("ingrese dato a buscar", "BUSCANDO COSAS")
Cells(7, 1) = buscando
Range("B7") = Application.WorksheetFunction.VLookup(Range("A7"), Range("A2:B5"), 2)
MsgBox Range("B7").Value, vbInformation, "VALOR ENCONTRADO"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas