Hallo zusammen,
ich bin ein Anfänger in VBA und versuche seit längerer Zeit jede einzelne Zeile die das Kriterium " abgeschlossen" erfüllt aus dem Haupttabellenblatt in ein separtes Blatt in der gleichen Datei untereinander aufzulisten. Das Hauptproblem ist, dass jede neue kopierte Zeile die vorherige eingefügte Zeile ersetzt statt eine Auflistung durchzuführen. Während meiner Versuche konnte ich dabei feststellen, dass bei manueller Änderung der "Offset() "-Funktion neue Zeilen untereinander aufgelistet werden können, wenn die erste Zahl geändert wird.
Bsp Offset(1,0) Zeile wird in die erste Zeile kopiert
Offset(2,0) entsprechend in die zweite Zeile usw.
Jetzt möchte ich den ersten Parameter dynamisch definieren, was bisher nicht geklappt hat. Wie könnte ein Loop für Offset aussehen?
Ich würde mich über Hilfestellungen sehr freuen. Unten befindet sich der VBA Code, den ich in einem Forum gefunden habe.
Beste Grüße
Kintu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zeile As Long
Set Target = Intersect(Target, Range("F21:F268"))
If Target Is Nothing Then Exit Sub
If Target = " abgeschlossen" Then
Zeile = Target.Row
Range(Cells(Zeile, 1), Cells(Zeile, 11)).Copy _
Destination:=Sheets("abgeschlossen").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Target.EntireRow.Delete
End If
End Sub
|