У меня есть книга Excel с большим количеством листов.
Я пытаюсь скопировать последнюю строку с содержимым в следующую пустую строку на определенных листах.
Например, мои листы называются Hoja1, Hoja2, Hoja3, ..., Hoja20, но Мне просто нужно сделать это в листах Hoja1, Hoja3, Hoja4. Hoja12, Hoja13 и Hoja20.
Это мой код:
Sub sale()
Sheets(Array("Hoja1", "Hoja3", "Hoja4", "Hoja12", "Hoja13")).Select
Sheets("Hoja20").Activate
Range("A50000").End(xlUp).Select
Range(Selection, Selection.End(xlToRight)).Copy
Range("A50000").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
End Sub
Иногда последняя строка удаляется, и в Hoja3, когда копируется последняя строка, удаляется последняя ячейка, в которой в исходной строке есть данные.
Я попробовал эту альтернативу:
Sub copylastrow()
Sheets(Array("Hoja1", "Hoja3", "Hoja4", "Hoja12", "Hoja13")).Select
Sheets("Hoja20").Activate
Range("A" & Rows.Count).End(xlUp).EntireRow.Copy
Range("A" & Rows.Count).End(xlUp).Offset(1).EntireRow.PasteSpecial
End Sub
Копирует последнюю строку только в Hoja20.