Anteriormente se presentaron variantes que también pueden ser de utilidad, como usar la función VLookup o BuscarV al presionar enter y como usar la función VLookup o BuscarV con base datos en otra hoja.
Antes de seguir recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.
Con los siguientes códigos se determina la última fil a con datos y como se utiliza la expresión WorksheetFunction en una macro, la última fila con datos es necesaria para determinar un rango variable y no quede sujeto a una cantidad de datos fijos en la base de datos, haciendo una macro funcional ya que buscará los datos en toda la base de datos sin importar la cantidad que cotentenga.
Considera la posibilidad de aportar al mantenimiento del sitio si consideras que fue útil, el ejemplo se puede descargar en forma gratuita desde el final del post, desde el link destinado a tal efecto.
Recomiendo observar vídeo siguiente para una más fácil comprensión de la macro; suscribe a nuestra web desde la parte superior derecha de la página ingresando tu mail y a nuestro canal de You Tube para recibir en tu correo vídeos explicativos sobre macros interesantes, como por ejemplo macro para copiar varias hojas y guardar como con el explorador de windows, buscar en listbox mientras escribes en textbox, como crear una factura o sale invoice y grabar guardar PDF XLS y enviar por mail, como conectar Excel con Word y modificar una plantilla de Word y muchos ejemplos más.
if (payload.eventType == ‘subscribe’) {
// Add code to handle subscribe event.
} else if (payload.eventType == ‘unsubscribe’) {
// Add code to handle unsubscribe event.
}
if (window.console) { // for debugging only
window.console.log(‘YT event: ‘, payload);
}
}
Código que se inserta en un módulo
Sub VLookupConEnterHD()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
On Error Resume Next
Dim uf As String
Set a = Sheets(«URL MACRO EJEMPLO»)
pf = 8
uf = a.Range(«A» & Rows.Count).End(xlUp).Row
bus1 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 1, False)
bus2 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 2, False)
bus3 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 3, False)
bus4 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 4, False)
bus5 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 5, False)
bus6 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 6, False)Cells(4, «A») = bus1
Cells(4, «B») = bus2
Cells(4, «C») = bus3
Cells(4, «D») = bus4
Cells(4, «E») = bus5
Cells(4, «F») = bus6
If bus1 = Empty Then
Range(«4:4»).Clear
Cells(4, «A») = «No se encontraron registros en la base de datos»
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Application.ScreenUpdating = False
Application.DisplayAlerts = False
On Error Resume Next
Dim uf As String
Set a = Sheets(«URL MACRO EJEMPLO»)
pf = 8
uf = a.Range(«A» & Rows.Count).End(xlUp).Row
bus1 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 1, False)
bus2 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 2, False)
bus3 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 3, False)
bus4 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 4, False)
bus5 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 5, False)
bus6 = Application.WorksheetFunction.VLookup(Cells(1, «B»), a.Range(«A» & pf & «:F» & uf), 6, False)
Cells(4, «A») = bus1
Cells(4, «B») = bus2
Cells(4, «C») = bus3
Cells(4, «D») = bus4
Cells(4, «E») = bus5
Cells(4, «F») = bus6
If bus1 = Empty Then
Range(«4:4»).Clear
Cells(4, «A») = «No se encontraron registros en la base de datos»
End If
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends