Zeilen löschen VBA

Bild

Betrifft: Zeilen löschen VBA
von: Fritz_W
Geschrieben am: 01.09.2015 09:16:04

Hallo Forumsbesucher,
ich möchte im aktiven Tabellenblatt alle Zeilen löschen, in denen in der Spalte I entweder der Text "gesamt" oder "Summe" steht.
Für Eure Unterstützung danke ich im Voraus.
mfg
Fritz

Bild

Betrifft: Autofilter
von: RPP63
Geschrieben am: 01.09.2015 09:28:41
Hallo!
Filtere Spalte I nacheinander nach den Begriffen und lösche die sichtbaren Zeilen.
Die "weggefilterten" Zeilen bleiben erhalten.
Gruß Ralf

Bild

Betrifft: AW: Autofilter
von: Fritz_W
Geschrieben am: 01.09.2015 09:46:39
Hallo Ralf,
vielen Dank für den Tipp.
Damit komm ich prima klar.
Gruß
Fritz

Bild

Betrifft: VBA
von: RPP63
Geschrieben am: 01.09.2015 09:30:30
Ergänzend:
Zeichne dies mal mit dem Makrorekorder auf, dann hast Du Dein VBA.
(Wenn Du es dynamisch brauchst, dann stelle den aufgezeichneten Code mal hier ein)
Gruß Ralf

Bild

Betrifft: AW: Zeilen löschen VBA
von: Gerd L
Geschrieben am: 01.09.2015 10:21:13


Sub A()
With ActiveSheet
.UsedRange.AutoFilter
.UsedRange.AutoFilter field:=9, Criteria1:="Summe", Operator:=xlOr, Criteria2:="gesamt"
Intersect(.Range("2:" & Rows.Count), .AutoFilter.Range.SpecialCells(xlCellTypeVisible)). _
EntireRow.Delete
.UsedRange.AutoFilter
End With
End Sub
Hallo Fritz!
Daten ab Zeile2, Spalte A - mind. I sind vorhanden
Den Bereich (UsedRange) kannst du anpassen.
Gruß Gerd

Bild

Betrifft: AW: Zeilen löschen VBA
von: Fritz_W
Geschrieben am: 01.09.2015 13:57:48
Hallo Gerd,
super die VBA-Variante, vielen Dank.
Gruß
Fritz

Bild

Betrifft: AW: Zeilen löschen VBA
von: Daniel
Geschrieben am: 01.09.2015 10:24:49
Hi
mit der seit Excel 2007 verfügbaren Standardmethode zum schnellen Löschen von Zeilen mit Bediungung:
1. markiere in einer Hilfsspalte per Formel alle Zeilen, die gelöscht werden sollen mit 0 und die die stehen bleiben müsssen mit der aktuellen zeilennummer:
=Wenn(Oder(I1="gesamt";I1="Summe");0;Zeile())
2. schreibe in die erste Zeile der Hilfsspalte (Überschrift) ebenfalls die 0
3. Wende auf die Tabelle die Funktion DATEN - DATENTOOLS - DUPLIAKTE ENTFERNEN an, mit der Hilfsspalte als Kriterium und der Option "keine Überschrift"
4. lösche die Hilfsspalte
geht natürlich auch als Makro:


With ActiveSheet.Usedrange
    With .columns(.Columns.count + 1)
        .formulaR1C1 = "=IF(OR(RC9=""gesamt"",RC9=""Summe""),0,Row())"
        .Cells(1, 1).value = 0
        .EntireRow.RemoveDuplicates .column, xlno
        .ClearContents
    End with
End With

Gruß Daniel

Bild

Betrifft: AW: Zeilen löschen VBA
von: Fritz_W
Geschrieben am: 01.09.2015 14:00:45
Hallo Daniel,
prima Umsetzung,
vielen Dank für deine Vorschläge.
Gruß
Fritz

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zeilen löschen VBA"