Copiar celdas de una hoja a otra dependiendo de valor

Tengo un libro con dos hojas
Hoja1 hoja2
Quisiera con un botón situado en la hoja 1, buscar en un rango de la hoja 2 un determinado texto y si lo encuentra, copiar el valor de la primera celda de la misma fila donde se encuentre el texto y pegarlo en la hoja 1.

EJEMPLO
HOJA 2
A B C D
COPIAR TEXTO busco en la hoja2, en la columna D las celdas
NO COPIAR que contengan el valor TEXTO y copio el valor
COPIAR TEXTO que corresponda a la celda de la columna A
NO COPIAR de la misma fila (en este caso texto COPIAR)
No copiar
COPIAR TEXTO

HOJA 1
A B C D
COPIAR Y los pegaría en la columna D de la hoja1 de

COPIAR de forma consecutiva.

COPIAR

1 respuesta

Respuesta
2

Siguiendo el ejemplo de esas coordenadas, esta sería la macro que necesitas:

Sub proceso()
'por luismondelo
valor = InputBox("qué buscamos????", Default:="luis")
Set busca = Sheets("hoja2").Range("d1:d" & Sheets("hoja2").Range("d65000").End(xlUp).Row).Find(valor, LookIn:=xlValues, lookat:=xlWhole)
If Not busca Is Nothing Then
ubica = busca.Address
Do
Range("d65000").End(xlUp).Offset(1, 0).Value = busca.Offset(0, -3)
Set busca = Sheets("hoja2").Range("d1:d" & Sheets("hoja2").Range("d65000").End(xlUp).Row).FindNext(busca)
Loop While Not busca Is Nothing And busca.Address <> ubica
End If
Range("d1").Delete
End Sub

recuerda finalizar la consulta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas