Wie kann ich in excel per vba die letzten gefüllten Zeilen von unten kopieren?

2 Antworten

Teste mal ausführlich:

Sub test1()
Dim lngLetzte As Long
lngLetzte = UsedRange().Rows.Count
Range(Cells(lngLetzte - 29, 1), Cells(lngLetzte, 1)).EntireRow.Copy
End Sub

Oder, wenn das Ende sich auf eine bestimmte Spalte bezieht (hier ,1 für Spalte A) dann:


Sub test2()
Dim lngLetzte As Long
lngLetzte = Cells(Rows.Count, 1).End(xlUp).Row
Range(Cells(lngLetzte - 29, 1), Cells(lngLetzte, 1)).EntireRow.Copy
End Sub
Woher ich das weiß:Berufserfahrung – IT-Administrator (i.R.)

johanniplace 
Beitragsersteller
 23.01.2023, 12:54

Danke - hilft mir sehr weiter...

VBA ist schon ein bisschen her. In diesem Beispiel sollten die Spalten A bis Z kopiert werden, wenn du andere Spalten kopieren möchtest, müssen diese entsprechend anpassen werden.

Dim lastRow As Long

lastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row

wsSource.Range("A" & lastRow - 29 & ":Z" & lastRow).Copy

wsTarget.Range("A1").PasteSpecial xlPasteValues

Woher ich das weiß:Studium / Ausbildung – Ausbildung

johanniplace 
Beitragsersteller
 23.01.2023, 12:55

Danke