Ich habe Probleme mit Visual Basic in Excel, um alle Zeilen im Blatt mit Ausnahme der ersten sechs Zeilen vollständig zu löschen. Hier erläutern ich meinen Code mit einer Befehlsschaltfläche zugeordnet:Löschen von Zeilen TOTAL außer ersten
Dim i As Integer
Dim tot_rows As Integer
tot_rows = ThisWorkbook.Sheets("NAME").UsedRange.Rows.Count
With Worksheets("NAME")
For i = tot_rows To 6 Step -1
.Rows(i).ClearContents
.Rows(i).EntireRow.Delete
Next i
Wenn ich den Code ausführen es nicht eine einzelne Zeile nicht löschen, können Sie mir sagen, warum? tot_rows ist immer gleich 401 (und im Blatt kann ich 401 Zeilen sehen, also nehme ich an, es ist richtig). Könnte mehr als 401 Reihen sein, die ich visuell nicht sehen kann?
Vielen Dank für jede Hilfe, ich
Nur um sicher zu sein, da der Code gut aussieht, sind Sie sicher, dass 'tot_rows 'richtig eingestellt ist. Kannst du einen Breakpoint (F9) auf deine 'With'-Zeile setzen, den Code ausführen und den Wert von' tot_rows' in deinem Locals-Bereich überprüfen (Ansicht verwenden >> Locals), falls du diesen nicht bereits in deinem VBE hast . – JNevill
Oder Sie können es einfach in einer Zeile Code tun, nachdem Sie die letzte Zeile bestimmen ... 'Sheets (" Name "). Bereich (" A2: Z "& tot_rows) .Delete" – braX
Wo ist dein 'Ende mit' ? – dwirony