Buscar valores en hojas de calculo distintas y copiar resultados

Tengo dos hojas de calculo, en la hoja1 en la columna G, tengo valores que quiero buscar en la columna A de la Hoja2, si encuentra el mismo valor de G de H1 con respecto a A de H2, copiar los valores de todas las celdas de la columna B de Hoja2 en una sola casilla de correspondiente a G1 de la Hoja1, en este caso y asi sucesivamente con G2.. G3.. G4.. Que busque valores duplicados en la columna A de la Hoja2 y todos los valores que salgan de la columna B2 se copien en una celda nueva en la Hoja1. Espero haberme explicado y agradezco de antemano su atención.

Saludos.

1 respuesta

Respuesta
1

Dejo la macro según lo que se interpreta en esta entrada. Se ejecuta desde un botón ubicado en la hoja 1.

Sub concatenaTextos()
'x Elsamatilde
'Recorre col G de Hoja1 buscando reg de = Line en col A de Hoja2
Sheets("Hoja1").Select
cadena = ""
Range("G2").Select
'recorre la col G hasta encontrar celda vacía- Fin de rango
While ActiveCell <> ""
'establezco la búsqueda en Hoja2
Set busco = Sheets("Hoja2").Range("A:A").Find(ActiveCell.Value, LookIn:=xlValues, lookat:=xlWhole)
'si encontró algun registro, guardo su fila para seguir buscando a partir de aquí
If Not busco Is Nothing Then
 filx = busco.Row
 'comienza a guardar la cadena
 Do
 cadena = cadena & busco.Offset(0, 1) & ","
 'busca el sgte reg de = codigo
 Set busco = Sheets("Hoja2").Range("A:A").FindNext(busco)
 Loop While busco.Row <> filx And busco.Value = ActiveCell.Value
 'se terminó la búsqueda, copio la cadena en col H quitando la coma del final
 ActiveCell.Offset(0, 1) = Mid(cadena, 1, Len(cadena) - 1)
 'limpio las variables
 cadena = ""
 Set busco = Nothing
End If
'paso a la fila sgte y repito los bucles
ActiveCell.Offset(1, 0).Select
Wend
MsgBox "Fin del proceso.", , "FIN"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas