Macro que busque un dato y copie la información de varias columnas que se encuentran en otra hoja
Espero puedan ayudarme lo que necesito es una macro que busque el dato que se encuentra en la columna E3 de la hoja "valores" y lo encuentre en la columna B de la hoja "descargado", en caso de encontrar coincidencia debe copiar los datos que se encuentran desde el rango M3 al Y3 de la hoja "descargado" al rango Q3 al AD3 de la hoja "valores".
Y así sucesivamente ejecutar la búsqueda de todos los valores que están en la columna E3 de la hoja "valores" .
Intenté con la siguiente macro, pero resulta muy pesada.
Sub actualiza_valores()
Set h1 = Sheets("valores")
Set h2 = Sheets("descargado")
u1 = h1.Range("C" & Rows.Count).End(xlUp).Row 'valores
U2 = h2.Range("F" & Rows.Count).End(xlUp).Row 'descargado
'
With h1.Range("r3:r" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-13]," & h2.Name & "!R3C2:R" & U2 & _
"C22,12,0 )"
.Value = .Value
End With
With h1.Range("S3:S" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-14]," & h2.Name & "!R3C2:R" & U2 & _
"C22,13,0 )"
.Value = .Value
End With
With h1.Range("T3:T" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-15]," & h2.Name & "!R3C2:R" & U2 & _
"C22,14,0 )"
.Value = .Value
End With
With h1.Range("U3:U" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-16]," & h2.Name & "!R3C2:R" & U2 & _
"C22,15,0 )"
.Value = .Value
End With
With h1.Range("V3:V" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-17]," & h2.Name & "!R3C2:R" & U2 & _
"C22,16,0 )"
.Value = .Value
End With
With h1.Range("W3:W" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-18]," & h2.Name & "!R3C2:R" & U2 & _
"C22,17,0 )"
.Value = .Value
End With
With h1.Range("X3:X" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-19]," & h2.Name & "!R3C2:R" & U2 & _
"C22,18,0 )"
.Value = .Value
End With
With h1.Range("AD3:AD" & u1)
.FormulaR1C1 = "=VLOOKUP(RC[-25]," & h2.Name & "!R3C2:R" & U2 & _
"C25,24,0 )"
.Value = .Value
End With
End Sub