.

Este procedimiento lo que hace es buscar datos, es
similar a la función buscarv, pero con código de VBA y mucho más útil, es muy útil cuando se
tiene una planilla extensa y se quiere buscar un dato en función de uno o
varios criterios, en el ejemplo busca los datos de una hoja que coinciden en
otra hoja y trae los datos que necesito a la primer hoja, eso se puede adaptar
a las necesidades de cada uno pudiendo manejar una cantidad de datos extensa en segundos; como así
también incorporar varios criterios y que busque cualquier dato que se
necesite, si tienes alguna duda no dudes en comentar y te responderé a la
brevedad. A final se incorpora un link donde puedes bajarte un archivo de Excel
con el ejemplo, podrás abrirlo, explorar el código y manipularlo para adaptarlo
a tu aplicación, espero te sea de utilidad.
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.
Antes de continuar, recomiendo que leas un excelente libro sobre Excel el que te ayudará operar las planillas 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.
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);
}
}
Sub busca()
‘Evito movimientos en la pantalla
Application.ScreenUpdating = False
‘Dimensiono variables
Dim fila, filaaddress, conta As Integer
fila = 2
filaaddress = 2
conta = 0
On Error Resume Next
‘Realiza el bucle mientras la columna 1 de hoja alumno no este vacia
While Sheets(«Alumnos»).Cells(fila, 1) <> Empty
‘Controlo errores
‘ Realizo un nuevo bucle en la hoja adress mientras las filas de la columna 1 de esta hoja no esten vacias
‘ y el cotador sea cero
While Sheets(«Address»).Cells(filaaddress, 2) <> Empty And conta = 0
‘Si el nombre de la columna uno de la hoja alumno es igual al nombre de la columna uno de la hoja address
If Sheets(«Alumnos»).Cells(fila, 1) = Sheets(«Address»).Cells(filaaddress, 1) Then
‘es decir si encontro el dato, copia la dirección en la hoja alumno y voy a la fila siguiente de la hoja alumnos
Sheets(«Alumnos»).Cells(fila, 3) = Sheets(«Address»).Cells(filaaddress, 2)
‘Si encontro el dato hago que el contador sea 1 para que no busque más
conta = 1
Else
‘Si no encontro el dato aumento la fila de la hoja address para seguir buscando hasta el final
filaaddress = filaaddress + 1
End If
Wend
‘Aumento en uno la fila para seguir buscando el dato siguiente de la hoja alumnos
fila = fila + 1
‘Vuelvo filaaddress y contador a su valor de origen
filaaddress = 2
conta = 0
Wend
‘Vuelvo movimientos de la pantalla a su estado original
Application.ScreenUpdating = True
End Sub
.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends