Ich habe eine große Excel-Tabelle in der viele leere Zeilen enthalten sind. Um über die Auto-Filter-Funktion Datensätze suchen zu können, müssen die leere Zeilen gelöscht werden. Hat jemand eine Idee, wie ich dass durchführen kann ohne jede einzelne Zeile manuell löschen zu müssen. Damit wäre ich einige Zeit beschäftigt.
Ich bedanke mich im voraus.
erstelle eine zusätzliche (Hilfs-) Spalte und nummeriere sämtliche Zeilen (auch die leeren) durch. Sortiere anschließend nach einer Spalte. Die leeren Zeilen findest Du anschließend am Ende der Tabelle und kannst sie in einem Schwung löschen. Wenn Du nun wieder nach der Hilfsspalte sortierst, hast Du Deine alten Daten wieder in der alten Reihenfolge und ohne Leerzeilen.
Nur so am Rande: Den AutoFilter kannst Du auch trotz der Leerzeilen einsetzen. Du musst nur den zu filternden Datenbereich markieren, bevor Du den Filter aktivierst.
hatte schon mal ein ähnliches Problem. Mit dem folgenden Makro müßte es klappen:
Sub LeerzeilenLöschen()
Dim ze_zähler As Integer
Dim sp_zähler As Integer
Dim ZeileBehalten As Boolean
Dim zeilenende As Integer
Dim a As Range Set a = ThisWorkbook.Worksheets(deinTabellenblatt).Range(deinBereich)
For ze_zähler = a.Rows.Count To 1 Step -1
ZeileBehalten = False
For sp_zähler = 1 To a.Columns.Count
If a.Cells(ze_zähler, sp_zähler) „“ Then ZeileBehalten = True: Exit For
Next sp_zähler
If Not ZeileBehalten Then a.Rows(ze_zähler).Delete
Next ze_zähler
End Sub
Die fette Zeile muß noch angepaßt werden. Hier kommt der Eintrag für das Tabellenblatt (z.B. „Tabelle1“) und die Adressierung für den Bereich der ganzen Tabelle.
Bsp: Set a = ThisWorkbook.Worksheets(„Tabelle1“).Range(„A1:G200“)
Vor dem Ausführen des Makros am besten die Originaltabelle noch mal sichern, da ein Rückgängigmachen nicht möglich ist.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]