Macro para copiar a otra hoja ultima fila de rangos discontinuos

Tengo esta macro que me permite copiar los datos de la hoja1 a la hoja2 que funciona según lo requerido.

Me gustaría modificarla para que copiara solamente las ultimas celdas de rangos discontinuos de la hoja1 y las pegara en las ultimas celdas vacías de la hoja2.

Este es el código:

Sub Copiar_Discontinuo()
With Sheets("Hoja1")
.Range("A2:E" & .Cells(Rows.Count, 1).End(xlUp).Row).Copy _
Destination:=Sheets("Hoja2").Range("A" & Sheets("Hoja2").Cells(Rows.Count, 1).End(xlUp).Row + 1)
Range("A1").Select
End With
End Sub

Entonces, donde dice .Range("A2:E"... Lo quiero modificar para que copie las ultimas celdas de las columnas A, B, E, y Z, por ejemplo y que las pegue en la hoja2, en las ultimas celdas vacías de las columnas A, B, C y D.

1 Respuesta

Respuesta
1

Prueba esto:

Sub Copiar_Discontinuo()
  With Sheets("Hoja1")
    .Range(Replace("A2:A@,B2:B@,E2:E@,Z2:Z@", "@", .Range("A" & Rows. Count).End(3). Row)).Copy _
    Sheets("Hoja2").Range("A" & Sheets("Hoja2").Range("A" & Rows. Count).End(3).Row + 1)
  End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas