Macro que copie el contenido seleccionado de varias hojas para pegarla en otra hoja dentro del mismo Libro de Excel

Necesito una macro que pegue el contenido de las hojas Enero, Febrero, Marzo,..., Diciembre, en la hoja "Resumen". El contenido en todas las hojas está desde la columna A hasta la L, iniciando en la fila 2. Es decir, deseo copiar todo de ahí hacia abajo sin importar si se encuentra con celdas vacías, tomando en cuenta que el contenido de esas hojas se irá actualizando de forma automática, por lo cual la macro deberá ir pegando hasta la última fila de cada hoja y en orden sucesivo: primero todo lo de la hoja Enero, luego Febrero y así sucesivamente.

1 respuesta

Respuesta
2

Te dejo una macro para tal fin. Debes completar la cadena de meses.

Considero que la col A de las hojas mensuales siempre tendrán datos ... podrás ajustar esto también a otra col.

Sub unificaLibros()
'x Elsamatilde
'lista de hojas
hojax = Array("Enero", "Febrero", "Marzo")     'completar lista
Set hor = Sheets("Resumen")
'recorre la matriz de hojas
For i = LBound(hojax) To UBound(hojax)
    '1er fila libre de hoja Resumen
    ini = hor.Range("A" & Rows.Count).End(xlUp).Row + 1
    'busca el fin de rango en col A ----- ajustar x otra si esta presenta filas vacías
    With Sheets(hojax(i))
        fini = .Range("A" & Rows.Count).End(xlUp).Row
        .Range("A2:L" & fini).Copy Destination:=hor.Range("A" & ini)
    End With
Next i
MsgBox "Fin del proceso.", , "INFORMACIÓN"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas