Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Blattzeilen löschen mit Autofilter

Forumthread: Blattzeilen löschen mit Autofilter

Blattzeilen löschen mit Autofilter
05.01.2021 06:49:42
Axel
Liebe Forum-Mitglieder,
ich habe mit einen Code ein Problem.
Soll:
1. Alle Einträge älter als 2 Jahre sollen markiert werden. (Das wurde mit bedingter Formatierung gelöst.)
2. Mit Click auf Button (oben in Spalte F/G) sollen die rot markierten und zwei Jahre alten Blattzeilen gelöscht werden.
Ist:
1. Beim ersten löschen funktioniert alles.
2. Drückt man nun (aus versehen) nochmal auf den Button, wird die komplette Liste gelöscht.
Wo ist der Fehler?
Bin auf eure Vorschläge gespannt.
Viele Grüße
Axel
https://www.herber.de/bbs/user/142759.xlsm
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattzeilen löschen mit Autofilter
05.01.2021 07:41:24
Beverly
Hi Axel,
versuche es auf diesem Weg:
With wks
'prüfen, ob Autofilter aktiv ist
bolAutofilter = .AutoFilterMode
If bolAutofilter = True Then
'ggf. alle Daten anzeigen
If .FilterMode = True Then .ShowAllData
'autofiler-Modus deaktivieren
.AutoFilterMode = False
End If
'letzte Zeile mit Inhalt in Spalte A
Zeile_L = .Cells(.Rows.Count, 1).End(xlUp).Row
'Autofilter aktivieren
.Range(.Cells(1, 1), .Cells(Zeile_L, 1)).EntireRow.AutoFilter
'Filter auf Farbe Rot setzen
.AutoFilter.Range.AutoFilter Field:=1, Criteria1:=RGB(255, 0, 0), Operator:= _
xlFilterCellColor
'Zeilen mit gefilterten Zellen löschen falls vorhanden
If .Range(.Cells(1, 1), .Cells(Zeile_L, 1)).SpecialCells(xlCellTypeVisible).Count > 1 Then
.Range(.Cells(2, 1), .Cells(Zeile_L, 1)).SpecialCells(xlCellTypeVisible).EntireRow. _
Delete
End If
'Filter zurücksetzen
.AutoFilter.Range.AutoFilter Field:=1
If bolAutofilter = False Then
.AutoFilterMode = False
End If
End With


Anzeige
AW: Blattzeilen löschen mit Autofilter
05.01.2021 11:15:39
Axel
Hallo Beverly,
hat Prima geklappt. Vielen Dank!
Bleib gesund!
Axel
AW: Blattzeilen löschen mit Autofilter
05.01.2021 09:23:13
Herbert_Grom
Hallo Axel,
warum nimmst du nicht den Code, den ich dir geschickt habe? Der macht alles so wie du es willst und durch die Frage nach dem Schaltjahr, kann ein versehentliches löschen nicht passieren!
Servus
Anzeige
AW: Blattzeilen löschen mit Autofilter
05.01.2021 11:20:12
Axel
Hallo Herbert,
dein Code ist Super und funktioniert auch in meinen anderen Anwendungen.
Der Vorhandene Code war noch besser auf meine Arbeitsblätter abgestimmt, jedoch hatte er einen entscheidenen Fehler. Jetzt ist auch dieser behoben und es funktioniert sehr gut.
Gruß Axel
AW: Blattzeilen löschen mit Autofilter
05.01.2021 11:26:41
Herbert_Grom
Hallo Axel,
wodurch ist "dieser Fehler" jetzt behoben und welchen Code verwendest du nun?
Servus
Anzeige
AW: Blattzeilen löschen mit Autofilter
05.01.2021 11:45:36
Axel
Hallo Herbert,
den hier:
With wks
'prüfen, ob Autofilter aktiv ist
bolAutofilter = .AutoFilterMode
If bolAutofilter = True Then
'ggf. alle Daten anzeigen
If .FilterMode = True Then .ShowAllData
'autofiler-Modus deaktivieren
.AutoFilterMode = False
End If
'letzte Zeile mit Inhalt in Spalte A
Zeile_L = .Cells(.Rows.Count, 1).End(xlUp).Row
'Autofilter aktivieren
.Range(.Cells(1, 1), .Cells(Zeile_L, 1)).EntireRow.AutoFilter
'Filter auf Farbe Rot setzen
.AutoFilter.Range.AutoFilter Field:=1, Criteria1:=RGB(255, 0, 0), Operator:= _
xlFilterCellColor
'Zeilen mit gefilterten Zellen löschen falls vorhanden
If .Range(.Cells(1, 1), .Cells(Zeile_L, 1)).SpecialCells(xlCellTypeVisible).Count > 1 Then
.Range(.Cells(2, 1), .Cells(Zeile_L, 1)).SpecialCells(xlCellTypeVisible).EntireRow. _
Delete
End If
'Filter zurücksetzen
.AutoFilter.Range.AutoFilter Field:=1
If bolAutofilter = False Then
.AutoFilterMode = False
End If
End With

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige