Jede xte Zeile löschen, wenn alle 0 sind
03.10.2020 15:03:46
Julia
das ist mein erster Beitrag hier und ihr habt mir schon oft bei meinen VBA Problemen geholfen. Mein jetziges habe ich aber leider nirgends gefunden.
Meine Werte sehen als Minmalbeispiel so aus, in Wirklichkeit deutlich mehr Zeilen und Spalten:
1 1 1 1
1 1 1 1
0 0 0 0
0 0 0 0
1 1 1 1
<b>0 0 0 0</b>
0 0 0 0
0 0 0 0
-->
1 1 1 1
1 1 1 1
1 1 1 1
<b>0 0 0 0</b>
Mein Ziel ist es, Zeilen in denen nur Nullen stehen zu löschen, falls die 0er Zeilen in jeder x-ten Zeile vorkommen. In diesem Fall würde dies bedeuten, dass die Zeilen 3 und 4 gelöscht würden, weil die Zeilen 7 und 8 ebenfalls 0er Zeilen sind, die Spalte 6 aber eben nicht (da die zweite Zeile keine 0 ist).
Ich habe schon viel rumprobiert, komme aber nicht auf richitge Ergebnis.
Mein Ansatz:
Sub Zeilenlöschen()
Dim ws As Worksheet
Set ws = Worksheets(1)
ls = ws.Cells(1, wsQ.Columns.Count).End(xlToLeft).Column
lz = ws.Cells(wsQ.Rows.Count, 1).End(xlUp).Row
For i = 1 To lz
If Application.CountIf(Range(Cells(i, 1), Cells(i, ls)), 0) = 4 Then
'hier soll dann jede weitere xte Zeile überprüft werden, ob sie alle 0 sind und wenn ja gelöscht werden
Vielen Dank für eure Hilfe!