Macro copiar y pegar datos de un libro a otro

Solicito tu amable colaboración para una macro que me proporcionaste, me funciona excelente, la aplique para unas nuevas consultas, donde debo filtrar los datos de hoja origen copiar y pegar hoja destino, solo que no me copia solo los datos visible si no todo el contenido.

Me podrías colaborar agregando la sentencia que falta para que solo copie y pegue datos visible

'Por Dante Amor
Dim sh1 As Worksheet, sh2 As Worksheet
Dim uf1 As Long, uf2 As Long
Application.ScreenUpdating = False
Set sh1 = Workbooks("Acumulado--21.xlsm").Sheets("Rendimientos ") 'hoja origen
Set sh2 = Workbooks("Indicadores").Worksheets("Datos") 'hoja destino
'
uf1 = sh1.Range("A" & Rows.Count).End(xlUp).Row
uf2 = sh2.Range("B" & Rows.Count).End(xlUp).Row + 1
'
'Copia las columnas necesarias
sh1.Range("A2:E" & uf1).Copy
Sh2.Range("B" & uf2). PasteSpecial xlPasteValues
sh1.Range("F2:F" & uf1). Copy
sh2.Range("I" & uf2). PasteSpecial xlPasteValues
sh1.Range("G2:G" & uf1). Copy
sh2.Range("J" & uf2). PasteSpecial xlPasteValues
sh1.Range("H2:I" & uf1). Copy
sh2.Range("N" & uf2). PasteSpecial xlPasteValues
sh1.Range("J2:K" & uf1). Copy
sh2.Range("Q" & uf2). PasteSpecial xlPasteValues
sh1.Range("L2:L" & uf1). Copy
sh2.Range("V" & uf2). PasteSpecial xlPasteValues
If sh1.AutoFilterMode Then sh1.AutoFilterMode = True
Application.CutCopyMode = False
Application.ScreenUpdating = True

End Sub

Añade tu respuesta

Haz clic para o