AW: VBA Zeilenlöschen
21.10.2014 14:45:31
Daniel
Hi
zum Zeilenlöschen per VBA eignet sich das Duplikate entfernen.
hierzu trägt man am Datenende eine Formel ein, die alle Zeilen mit 0 markiert, die gelöscht werden müssen und alle die stehen bleiben sollen mit der aktuellen Zeilennummer
dann schreibt man in die Überschriftenspalte noch die 0 und wendet das Duplikateentfernen mit der Hilfsspalte als Kriteriumsspalte an.
sieht als Code so aus:
With ActiveSheet.UsedRange
With Columns(.Columns.Count + 1)
.FormulaR1C1 = "=IF(CountIf(RC3:RC10,0)>0,0,Row()
.Cells(1, 1).value = 0
.EntireRow.RemoveDuplicates .column, xlno
.ClearContents
End With
End With
das löscht jetzt die Zeile, wenn eine der Spalten eine 0 enthält
wenn die Zeile nur dann gelöscht werden soll, wenn alle Spalten der Zeile eine 0 enthalten, dann musst du die Formel ändern:
a) löschen bei mindestens einer 0 in der Zeile: "=IF(CountIf(RC3:RC10,0)>0,0,Row()"
b) löschen wenn alle Zellen der Zeile 0 sind : "=IF(CountIf(RC3:RC10,0)=8,0,Row()"
Gruß Daniel