So löschen Sie leere Zeilen in Excel mit VBA, Formeln und Power Query

  • Teile Das
Michael Brown

In diesem Tutorial lernen Sie ein paar einfache Tricks, um mehrere leere Zeilen in Excel sicher zu löschen, ohne dass auch nur ein bisschen Information verloren geht .

Leere Zeilen in Excel sind ein Problem, mit dem wir alle hin und wieder konfrontiert werden, vor allem, wenn wir Daten aus verschiedenen Quellen kombinieren oder Informationen von einem anderen Ort importieren. Leere Zeilen können in Ihren Arbeitsblättern auf verschiedenen Ebenen großen Schaden anrichten, und das manuelle Löschen dieser Zeilen kann ein zeitaufwändiger und fehleranfälliger Prozess sein. In diesem Artikel lernen Sie einige einfache und zuverlässige Methoden zum Entfernen von Leerzeilen inIhre Arbeitsblätter.

    Wie man Leerzeilen in Excel NICHT entfernt

    Es gibt verschiedene Möglichkeiten, leere Zeilen in Excel zu löschen, aber überraschenderweise halten sich viele Online-Ressourcen an die gefährlichste, nämlich Suchen & Auswählen > Gehe zu Spezial > Rohlinge .

    Was ist falsch an dieser Technik? Sie wählt alle Rohlinge in einem Bereich, und folglich werden Sie am Ende alle Zeilen löschen, die auch nur eine einzige leere Zelle enthalten.

    Die folgende Abbildung zeigt die ursprüngliche Tabelle auf der linken Seite und die resultierende Tabelle auf der rechten Seite. In der resultierenden Tabelle sind alle unvollständigen Zeilen verschwunden, sogar Zeile 10, in der nur das Datum in Spalte D fehlte:

    Fazit: Wenn Sie Ihre Daten nicht durcheinander bringen wollen, sollten Sie niemals leere Zeilen löschen, indem Sie leere Zellen markieren, sondern stattdessen eine der weiter unten beschriebenen Methoden anwenden.

    Leere Zeilen in Excel mit VBA entfernen

    Mit Excel VBA lassen sich viele Probleme lösen, z. B. mehrere leere Zeilen. Das Beste an dieser Methode ist, dass sie keine Programmierkenntnisse erfordert. Nehmen Sie einfach einen der unten stehenden Codes und führen Sie ihn in Ihrem Excel aus (die Anleitung finden Sie hier).

    Makro 1: Löschen von Leerzeilen in einem ausgewählten Bereich

    Dieser VBA-Code löscht stillschweigend alle leeren Zeilen in einem ausgewählten Bereich, ohne dem Benutzer eine Meldung oder ein Dialogfeld anzuzeigen.

    Anders als bei der vorherigen Technik löscht das Makro eine Zeile, wenn die die gesamte Zeile ist leer Sie stützt sich auf die Arbeitsblattfunktion CountA, um die Anzahl der nicht leeren Zellen in jeder Zeile zu ermitteln, und löscht dann Zeilen mit der Anzahl Null.

    Public Sub DeleteBlankRows() Dim SourceRange As Range Dim EntireRow As Range Set SourceRange = Application.Selection If Not (SourceRange Is Nothing ) Then Application.ScreenUpdating = False For I = SourceRange.Rows.Count To 1 Step -1 Set EntireRow = SourceRange.Cells(I, 1).EntireRow If Application.WorksheetFunction.CountA(EntireRow) = 0 Then EntireRow.Delete End If Next Application.ScreenUpdating= True End If End Sub

    Dem Nutzer soll die Möglichkeit gegeben werden den Zielbereich nach Ausführung des Makros auswählen , verwenden Sie diesen Code:

    Public Sub RemoveBlankLines() Dim SourceRange As Range Dim EntireRow As Range On Error Resume Next Set SourceRange = Application.InputBox( _ "Select a range:" , "Delete Blank Rows" , _ Application.Selection.Address, Type :=8) If Not (SourceRange Is Nothing ) Then Application.ScreenUpdating = False For I = SourceRange.Rows.Count To 1 Step -1 Set EntireRow = SourceRange.Cells(I, 1).EntireRow IfApplication.WorksheetFunction.CountA(EntireRow) = 0 Then EntireRow.Delete End If Next Application.ScreenUpdating = True End If End Sub

    Nach der Ausführung zeigt das Makro das folgende Eingabefeld an, Sie wählen den Zielbereich aus und klicken auf OK:

    Nach kurzer Zeit werden alle leeren Zeilen im ausgewählten Bereich entfernt und die verbleibenden nach oben verschoben:

    Makro 2: Alle leeren Zeilen in Excel löschen

    Zum Entfernen alle leeren Zeilen über die aktives Blatt die letzte Zeile des verwendeten Bereichs ermitteln (d. h. die Zeile mit der letzten Zelle mit Daten) und dann nach oben gehen und die Zeilen löschen, für die CountA Null ergibt:

    Sub DeleteAllEmptyRows() Dim LastRowIndex As Integer Dim RowIndex As Integer Dim UsedRng As Range Set UsedRng = ActiveSheet.UsedRange LastRowIndex = UsedRng.Row - 1 + UsedRng.Rows.Count Application.ScreenUpdating = False For RowIndex = LastRowIndex To 1 Step -1 If Application.CountA(Rows(RowIndex)) = 0 Then Rows(RowIndex).Delete End If Next RowIndex Application.ScreenUpdating = True End Sub

    Makro 3: Zeile löschen, wenn Zelle leer ist

    Mit diesem Makro können Sie eine ganze Zeile löschen, wenn eine Zelle in der angegebenen Spalte leer ist.

    Der folgende Code prüft Spalte A auf Leerzeichen. Um Zeilen auf der Grundlage einer anderen Spalte zu löschen, ersetzen Sie "A" durch einen entsprechenden Buchstaben.

    Sub DeleteRowIfCellBlank() On Error Resume Next Columns( "A" ).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub

    In der Tat verwendet das Makro die Gehe zu Spezial > Rohlinge Sie können das gleiche Ergebnis erzielen, indem Sie diese Schritte manuell durchführen.

    Hinweis: Das Makro löscht leere Zeilen in der Tabelle ganzes Blatt Als Vorsichtsmaßnahme kann es ratsam sein, das Arbeitsblatt zu sichern, bevor Sie dieses Makro ausführen.

    Entfernen von Leerzeilen in Excel mit VBA

    Um leere Zeilen in Excel mit einem Makro zu löschen, können Sie entweder den VBA-Code in Ihre eigene Arbeitsmappe einfügen oder ein Makro aus unserer Beispielarbeitsmappe ausführen.

    Fügen Sie ein Makro zu Ihrer Arbeitsmappe hinzu

    Um ein Makro in Ihre Arbeitsmappe einzufügen, führen Sie die folgenden Schritte aus:

    1. Öffnen Sie das Arbeitsblatt, in dem Sie leere Zeilen löschen möchten.
    2. Drücken Sie Alt + F11, um den Visual Basic Editor zu öffnen.
    3. Klicken Sie im linken Fensterbereich mit der rechten Maustaste auf DiesesArbeitsbuch und klicken Sie dann auf einfügen. > Modul .
    4. Fügen Sie den Code in das Codefenster ein.
    5. Drücken Sie F5, um das Makro auszuführen.

    Eine ausführliche Schritt-für-Schritt-Anleitung finden Sie unter Wie man VBA in Excel einfügt und verwendet.

    Führen Sie ein Makro aus unserer Beispielarbeitsmappe aus

    Laden Sie unsere Beispiel-Arbeitsmappe mit Makros zum Löschen von Leerzeilen herunter und führen Sie eines der folgenden Makros aus:

    DeleteBlankRows - entfernt leere Zeilen im aktuell ausgewählten Bereich.

    RemoveBlankLines - löscht leere Zeilen und verschiebt sie nach oben in einem Bereich, den Sie nach der Ausführung des Makros auswählen.

    DeleteAllEmptyRows - löscht alle leeren Zeilen auf dem aktiven Blatt.

    DeleteRowIfCellBlank - löscht eine Zeile, wenn eine Zelle in einer bestimmten Spalte leer ist.

    Um das Makro in Excel auszuführen, gehen Sie wie folgt vor:

    1. Öffnen Sie die heruntergeladene Arbeitsmappe und aktivieren Sie die Makros, wenn Sie dazu aufgefordert werden.
    2. Öffnen Sie Ihre eigene Arbeitsmappe und navigieren Sie zu dem Arbeitsblatt, das Sie interessiert.
    3. Drücken Sie in Ihrem Arbeitsblatt Alt + F8, wählen Sie das Makro aus und klicken Sie auf ausführen. .

    Formel zum Löschen leerer Zeilen in Excel

    Wenn Sie sehen möchten, was Sie löschen, verwenden Sie die folgende Formel, um leere Zeilen zu erkennen:

    =IF(COUNTA(A2:D2)=0, "Leer", "Nicht leer")

    Dabei ist A2 die erste und D2 die letzte verwendete Zelle der ersten Datenzeile.

    Geben Sie diese Formel in E2 oder eine andere leere Spalte in Zeile 2 ein, und ziehen Sie den Füllgriff, um die Formel nach unten zu kopieren.

    Als Ergebnis erhalten Sie "Leer" in leeren Zeilen und "Nicht leer" in den Zeilen, die mindestens eine Zelle mit Daten enthalten:

    Die Logik der Formel liegt auf der Hand: Sie zählen die nicht leeren Zellen mit der Funktion COUNTA und verwenden die IF-Anweisung, um bei einer Zählung von Null "Blank" und ansonsten "Not Blank" zurückzugeben.

    Man kann sogar gut auf IF verzichten:

    =COUNTA(A2:D2)=0

    In diesem Fall liefert die Formel TRUE für leere Zeilen und FALSE für nicht leere Zeilen.

    Führen Sie die folgenden Schritte aus, um leere Zeilen zu löschen, wenn die Formel vorhanden ist:

    1. Markieren Sie eine beliebige Zelle in der Kopfzeile und klicken Sie auf Sortieren & Filtern > Filter über die Startseite auf der Registerkarte Formate Dadurch werden die Dropdown-Pfeile für die Filterung zu allen Kopfzellen hinzugefügt.
    2. Klicken Sie auf den Pfeil in der Spaltenüberschrift der Formel, deaktivieren Sie das Kontrollkästchen (Alles auswählen), wählen Sie Leere und klicken Sie OK :
    3. Wählen Sie alle gefilterten Zeilen aus. Klicken Sie dazu auf die erste Zelle der ersten gefilterten Zeile und drücken Sie Strg + Umschalt + Ende, um die Auswahl bis zur letzten Zelle der letzten gefilterten Zeile zu erweitern.
    4. Klicken Sie mit der rechten Maustaste auf die Auswahl, wählen Sie Zeile löschen aus dem Kontextmenü, und bestätigen Sie dann, dass Sie wirklich ganze Zeilen löschen wollen:
    5. Entfernen Sie den Filter durch Drücken von Strg + Umschalt + L. Oder klicken Sie auf Startseite tab> Sortieren & Filtern > Filter .
    6. Löschen Sie die Spalte mit der Formel, da Sie sie nicht mehr benötigen.

    Das Ergebnis ist eine saubere Tabelle ohne Leerzeilen, in der alle Informationen erhalten bleiben:

    Tipp: Anstatt leere Zeilen zu löschen, können Sie auch nicht leere Zeilen kopieren Filtern Sie dazu die "Nicht leeren" Zeilen, markieren Sie sie und drücken Sie Strg + C zum Kopieren. Wechseln Sie dann zu einem anderen Blatt, markieren Sie die obere linke Zelle des Zielbereichs und drücken Sie Strg + V zum Einfügen.

    Entfernen von Leerzeilen in Excel mit Power Query

    In Excel 2016 und Excel 2019 gibt es noch eine weitere Möglichkeit, leere Zeilen zu löschen - mit der Power Query-Funktion, die in Excel 2010 und Excel 2013 als Add-In heruntergeladen werden kann.

    Wichtiger Hinweis: Diese Methode funktioniert mit folgendem Vorbehalt: Power Query konvertiert die Quelldaten in eine Excel-Tabelle und ändert die Formatierung wie Füllfarbe, Rahmen und einige Zahlenformate. Wenn Ihnen die Formatierung Ihrer Originaldaten wichtig ist, sollten Sie besser einen anderen Weg wählen, um leere Zeilen in Excel zu entfernen.

    1. Wählen Sie den Bereich aus, in dem Sie leere Zeilen löschen möchten.
    2. Gehen Sie zum Daten tab> Get & Transform Gruppe und klicken Sie auf Von Tabelle/Bereich Dadurch wird Ihre Tabelle in den Power Query Editor geladen.
    3. Auf der Startseite des Power Query Editors, klicken Sie auf Zeilen entfernen > Leere Zeilen entfernen .
    4. Klicken Sie auf die Schließen & Laden Dadurch wird die resultierende Tabelle in ein neues Arbeitsblatt geladen und der Abfrage-Editor geschlossen.

    Als Ergebnis dieser Manipulationen erhielt ich die folgende Tabelle ohne leere Zeilen, aber mit einigen unschönen Änderungen - das Währungsformat ist verloren gegangen und die Datumsangaben werden im Standardformat statt im benutzerdefinierten Format angezeigt:

    Zeilen löschen, wenn eine Zelle in einer bestimmten Spalte leer ist

    Zu Beginn dieses Tutorials haben wir Sie davor gewarnt, leere Zeilen durch die Auswahl von Leerzeichen zu entfernen. Diese Methode ist jedoch sehr nützlich, wenn Sie Zeilen aufgrund von Leerstellen in einer bestimmten Spalte .

    Ein Beispiel: Wir entfernen alle Zeilen, in denen eine Zelle in Spalte A leer ist:

    1. Markieren Sie die Schlüsselspalte, in unserem Fall Spalte A.
    2. Auf der Startseite Registerkarte, klicken Sie auf Suchen & Auswählen > Gehe zu Spezial Oder drücken Sie F5 und klicken Sie auf die Schaltfläche Besondere... Taste.
    3. In der Gehe zu Spezial Dialog, wählen Sie Rohlinge und klicken Sie OK Dadurch werden leere Zellen in dem verwendeten Bereich in Spalte A ausgewählt.
    4. Klicken Sie mit der rechten Maustaste auf eine ausgewählte Zelle und wählen Sie Löschen... aus dem Kontextmenü.
    5. In der Löschen wählen Sie im Dialogfenster Gesamte Zeile und klicken Sie auf OK.

    Die Zeilen, die keinen Wert in Spalte A haben, sind nicht mehr vorhanden:

    Das gleiche Ergebnis kann durch das Filtern von Leerzeichen in der Schlüsselspalte erzielt werden.

    So entfernen Sie zusätzliche Zeilen unter den Daten

    Manchmal können Zeilen, die völlig leer aussehen, tatsächlich einige Formate oder nicht druckbare Zeichen enthalten. Um zu überprüfen, ob die letzte Zelle mit Daten wirklich die letzte verwendete Zelle in Ihrem Arbeitsblatt ist, drücken Sie Strg + Ende . Wenn Sie dadurch zu einer visuell leeren Zeile unter Ihren Daten gelangen, ist diese Zeile im Sinne von Excel nicht leer. Um solche Zeilen zu entfernen, gehen Sie wie folgt vor:

    1. Klicken Sie auf die Überschrift der ersten leeren Zeile unter Ihren Daten, um sie auszuwählen.
    2. Drücken Sie die Tastenkombination Strg + Umschalt + Ende, um alle Zeilen auszuwählen, die irgendetwas enthalten, einschließlich Formate, Leerzeichen und nicht druckbare Zeichen.
    3. Klicken Sie mit der rechten Maustaste auf die Auswahl und wählen Sie Löschen... > Gesamte Reihe.

    Wenn Sie einen relativ kleinen Datensatz haben, möchten Sie vielleicht alle Leerzeilen unter Ihren Daten loswerden, z. B. um das Scrollen zu erleichtern. Obwohl es in Excel keine Möglichkeit gibt, nicht verwendete Zeilen zu löschen, spricht nichts dagegen, dass Sie Verstecken So geht's:

    1. Wählen Sie die Zeile unter der letzten Zeile mit Daten aus, indem Sie auf ihre Überschrift klicken.
    2. Drücken Sie Strg + Umschalt + Pfeil nach unten, um die Auswahl auf die letzte Zeile des Blattes zu erweitern.
    3. Drücken Sie Strg + 9, um die ausgewählten Zeilen auszublenden, oder klicken Sie mit der rechten Maustaste auf die Auswahl und dann auf Ausblenden .

    An die Zeilen wieder einblenden Drücken Sie Strg + A, um das gesamte Blatt auszuwählen, und drücken Sie dann Strg + Umschalt + 9, um alle Zeilen wieder sichtbar zu machen.

    In ähnlicher Weise können Sie nicht verwendete leere Spalten rechts von Ihren Daten ausblenden. Die detaillierten Schritte finden Sie unter Ausblenden nicht verwendeter Zeilen in Excel, damit nur der Arbeitsbereich sichtbar ist.

    Schnellste Methode zum Entfernen leerer Zeilen in Excel

    Hatten Sie beim Lesen der vorangegangenen Beispiele nicht das Gefühl, dass wir mit einem Vorschlaghammer eine Nuss knacken wollten? Wir bei Ablebits ziehen es vor, die Dinge nicht komplizierter zu machen, als sie sein müssen. Deshalb sind wir einen Schritt weiter gegangen und haben einen Zwei-Klick-Weg zum Löschen leerer Zeilen in Excel entwickelt.

    Wenn Sie die Ultimate Suite zu Ihrem Band hinzugefügt haben, können Sie wie folgt vorgehen alle leeren Zeilen löschen in einem Arbeitsblatt:

    1. Auf der Ablebits Tools auf der Registerkarte Transformieren Gruppe, klicken Sie auf Leerzeichen löschen > Leere Zeilen :
    2. Das Add-In informiert Sie darüber, dass alle leeren Zeilen aus dem aktiven Arbeitsblatt entfernt werden, und fordert Sie auf, dies zu bestätigen. Klicken Sie auf OK, und in einem Moment werden alle leeren Zeilen entfernt.

    Wie in der nachstehenden Abbildung zu sehen ist, haben wir nur die absolut leere Zeilen die nicht eine einzige Zelle mit Daten enthalten:

    Um mehr über die fantastischen Funktionen unserer Ultimate Suite für Excel zu erfahren, können Sie gerne eine Testversion herunterladen.

    Ich danke Ihnen für die Lektüre und hoffe, Sie nächste Woche in unserem Blog begrüßen zu dürfen!

    Michael Brown ist ein begeisterter Technologie-Enthusiast mit einer Leidenschaft für die Vereinfachung komplexer Prozesse mithilfe von Softwaretools. Mit mehr als einem Jahrzehnt Erfahrung in der Technologiebranche hat er seine Fähigkeiten in Microsoft Excel und Outlook sowie Google Sheets und Docs verfeinert. Michaels Blog widmet sich dem Teilen seines Wissens und seiner Expertise mit anderen und bietet leicht verständliche Tipps und Tutorials zur Verbesserung von Produktivität und Effizienz. Egal, ob Sie ein erfahrener Profi oder ein Anfänger sind, Michaels Blog bietet wertvolle Einblicke und praktische Ratschläge, wie Sie diese wichtigen Softwaretools optimal nutzen können.