Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

bestimmte Zeilen auf einem anderen Arbeitsblatt löschen
#1
Hallo,
ich möchte auf einem anderen Arbeitsblatt alle Zeilen löschen, die in Spalte 5 ein Datum haben das älter ist als heute.

Private Sub CommandButton3_Click()
Worksheets("Inhouse").Activate
lz = Cells(Rows.Count, 5).End(xlUp).Rows.Row
'* Durchlauf aller Zeilen
For t = lz To 4 Step
    If Cells(t, 5).Value < Date Then
        Rows(t).Delete Shift:=xlUp
    End If
Next t
End Sub

in Zeile 3 stehen die Überschriften, die Suche beginnt in Zeile 4, das Datum nach dem gesucht werden soll ist in Spalte 5

Leider klappt das nicht wie ich es mir vorgestellt habe.

Kann mir jemand weiter helfen ?

Gruß Frank
Antworten Top
#2
Moin!
Da sind mindestens zwei Fehler im Code.
Teste mal:

Private Sub CommandButton3_Click()
Worksheets("Inhouse").Activate
lz = Cells(Rows.Count, 5).End(xlUp).Row
'* Durchlauf aller Zeilen
For t = lz To 4 Step -1
    If Cells(t, 5).Value < Date Then
        Rows(t).Delete Shift:=xlUp
    End If
Next t
End Sub


Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Hallo Ralf,

das klappt perfekt !

Worksheets("Inhouse").Activate
lz = Cells(Rows.Count, 5).End(xlUp).Row
'* Durchlauf aller Zeilen
For t = lz To 4 Step -1
    If Cells(t, 5).Value < Date Then
        Rows(t).Delete Shift:=xlUp
    End If
Next t


Jetzt möchte ich nur das man die Daten die Spalte 5 und Spalte 4 vergleicht und alle Zeilen löscht in denen das Datum in Spalte 5 größer ist als in Spalte 4

If Cells(t, 5).Value > Cells(t, 4).Value Then
Rows(t).Delete Shift:=xlUp

ich habe es mal so versucht, klappt aber leider nicht.

Gruß Frank
Antworten Top
#4
Hallo,

Aber wie funktioniert es wenn der Blattschutz eingeschaltet ist? Wenn zum Beispiel die Inhalte eines Formulares gelöscht werden müssen.

Könnt ihr mir da mit einem Tipp helfen?

Danke
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste