Leere Zeilen löschen - so einfach gehts

Inhalt

Einleitung

In diesem Beitrag zeige ich euch, wie ihr in Excel Zeilen löscht, die in einer bestimmten Spalte leere Zellen enthalten. Das ist besonders nützlich, wenn ihr mit großen Datensätzen arbeitet und leere Einträge entfernen wollt. Ich zeige euch sowohl einen VBA-Code, der euch maximale Flexibilität bietet, als auch, wie ihr das Problem Schritt für Schritt löst.

 

Anwendungsfall

Stellt euch vor, ihr habt eine Liste mit mehreren hundert Zeilen, und in einigen Zellen einer bestimmten Spalte fehlen Einträge. Diese leeren Zeilen wollt ihr nun effizient löschen, ohne mühsam jede Zeile einzeln zu prüfen. Klingt nach viel Arbeit? Nicht mit Excel VBA! So könnte euer Datensatz aussehen:
Name Abteilung Position Gehalt
Max IT Entwickler 50000
Lisa Manager 60000
Robert HR 55000
Julia Vertrieb Verkäufer 45000
Marketing Designer 48000
Hier seht ihr, dass in den Spalten „Name“ und „Abteilung“ leere Zellen vorkommen. Diese Zeilen wollen wir löschen.

Der flexible VBA-Ansatz

Mit diesem VBA-Code könnt ihr ganz flexibel entscheiden, in welcher Spalte ihr die leeren Zellen überprüfen möchtet. Der Code fragt euch nach der Spalte, in der die Leerzellen stehen, und löscht anschließend die gesamte Zeile, wenn in der ausgewählten Spalte eine leere Zelle gefunden wird. Der Code: [vba] Sub Zeile_Loeschen() Dim sTxt As String Dim letzteZeile As Integer letzteZeile = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row ‘”Input” -> Abfrage Welche Spalte zur Auswahl genommen werden soll sTxt = InputBox(“In Welcher Spalte sind die Leerzellen?”) If sTxt = “” Then Exit Sub ‘Leerzeichen durch nichts ersetzen Columns(sTxt & “:” & sTxt).Select Selection.Replace What:=” “, Replacement:=””, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2 ‘Löscht die Zeilen, wenn in Spalte “Input” nichts steht ActiveSheet.Range(sTxt & “2:” & sTxt & letzteZeile).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub [/vba]
 
 

Erklärung des Codes

  1. Abfrage der Spalte: Mit InputBox wird die Spalte abgefragt, in der die Leerzellen überprüft werden sollen.
  2. Entfernen von Leerzeichen: Der Code durchsucht die Spalte und ersetzt eventuelle Leerzeichen, sodass auch Zellen, die nur Leerzeichen enthalten, als leer betrachtet werden.
  3. Löschen der Zeilen: Der Code sucht nach leeren Zellen und löscht die gesamte Zeile, in der eine leere Zelle gefunden wird.

Vorteile

  • Flexibilität: Ihr könnt jede beliebige Spalte auswählen, ohne den Code anpassen zu müssen.
  • Zeitersparnis: Anstatt manuell nach leeren Zellen zu suchen, erledigt der Code das für euch in Sekundenschnelle.

Wann ist dieser Code nützlich?

  • Wenn ihr regelmäßig große Tabellen bearbeitet, bei denen vereinzelt leere Einträge auftreten.
  • Wenn ihr schnell und effizient leere Zeilen entfernen wollt, ohne jede Zeile manuell prüfen zu müssen.

Fazit

Mit diesem VBA-Code könnt ihr leere Zeilen in Excel im Handumdrehen entfernen. Probiert es aus und seht, wie viel Zeit ihr mit der Automatisierung spart! Wenn ihr Fragen habt oder Unterstützung bei der Anwendung benötigt, hinterlasst einfach einen Kommentar.

Related Articles

Responses

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert