Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro: bestimmte Zeilen löschen

Makro: bestimmte Zeilen löschen
01.11.2017 11:58:47
Matthias
Grüßeuch,
ich würde gerne in dieser Datei ein Makro machen, das jede Zeile löscht, in der die Spalte F den Wert "0" oder keinen Wert aufweist.
https://www.herber.de/bbs/user/117347.xlsm
Könnt ihr mir bitte wieder helfen.
Vielen Dank, Gruß
Matthias
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro: bestimmte Zeilen löschen
01.11.2017 12:04:24
Crazy
Hallo
ein paar Daten wären in Spalte F nicht schlecht gewesen
hier mal eine Möglichkeit
Sub test()
Dim lngLetzte As Long
Dim i As Long
lngLetzte = Cells(Rows.Count, "F").End(xlUp).Row
For i = lngLetzte To 2 Step -1
If Cells(i, "F").Value = "" Or Cells(i, "F").Value = 0 Then
Rows(i).EntireRow.Delete
End If
Next
End Sub
MfG Tom
Anzeige
AW: Makro: bestimmte Zeilen löschen
01.11.2017 13:41:32
Matthias
Hallo Tom,
vielen Dank, so hab ich mir das vorgestellt!
herzliche Grüße
Matthias
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Bestimmte Zeilen in Excel mit VBA löschen


Schritt-für-Schritt-Anleitung

Um ein Makro zu erstellen, das bestimmte Zeilen in Excel löscht, kannst Du folgende Schritte befolgen:

  1. Excel öffnen: Starte Microsoft Excel und öffne die Datei, in der Du die Zeilen löschen möchtest.

  2. Entwicklertools aktivieren: Falls die Entwicklertools nicht angezeigt werden, kannst Du sie wie folgt aktivieren: Gehe zu „Datei“ > „Optionen“ > „Menüband anpassen“ und aktiviere das Kästchen „Entwicklertools“.

  3. VBA-Editor öffnen: Klicke auf „Entwicklertools“ und dann auf „Visual Basic“, um den VBA-Editor zu öffnen.

  4. Modul einfügen: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ > „Einfügen“ > „Modul“, um ein neues Modul zu erstellen.

  5. Code einfügen: Kopiere den folgenden VBA-Code in das Modul:

    Sub ZeilenLoeschen()
        Dim lngLetzte As Long
        Dim i As Long
        lngLetzte = Cells(Rows.Count, "F").End(xlUp).Row
        For i = lngLetzte To 2 Step -1
            If Cells(i, "F").Value = "" Or Cells(i, "F").Value = 0 Then
                Rows(i).EntireRow.Delete
            End If
        Next
    End Sub
  6. Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Klicke auf „Makros“, wähle „ZeilenLoeschen“ aus und klicke auf „Ausführen“.


Häufige Fehler und Lösungen

  • Makro lässt sich nicht ausführen: Stelle sicher, dass die Makros in den Excel-Optionen aktiviert sind. Gehe zu „Datei“ > „Optionen“ > „Trust Center“ > „Einstellungen für das Trust Center“ > „Makroeinstellungen“ und wähle die entsprechende Option.

  • Zeilen werden nicht gelöscht: Überprüfe, ob die Werte in Spalte F tatsächlich „0“ oder leer sind. Möglicherweise sind sie als Text formatiert.


Alternative Methoden

Falls Du keine Makros verwenden möchtest, kannst Du auch die Filterfunktion nutzen:

  1. Filter aktivieren: Markiere die Daten und gehe zu „Daten“ > „Filter“.
  2. Filtern: Klicke auf den Dropdown-Pfeil in der Spalte F und wähle „Leere“ und „0“ aus.
  3. Löschen: Markiere die gefilterten Zeilen, klicke mit der rechten Maustaste und wähle „Zeile löschen“.
  4. Filter zurücksetzen: Deaktiviere den Filter, um alle verbleibenden Daten anzuzeigen.

Praktische Beispiele

Wenn Du beispielsweise alle Zeilen ab einer bestimmten Zeile löschen möchtest, kannst Du den Code anpassen:

Sub ZeilenAbBestimmterLoeschen()
    Dim lngLetzte As Long
    Dim i As Long
    lngLetzte = Cells(Rows.Count, "F").End(xlUp).Row
    For i = lngLetzte To 5 Step -1 ' Löscht ab Zeile 5
        If Cells(i, "F").Value = "" Or Cells(i, "F").Value = 0 Then
            Rows(i).EntireRow.Delete
        End If
    Next
End Sub

Tipps für Profis

  • Backup erstellen: Erstelle immer ein Backup Deiner Datei, bevor Du Makros ausführst, um Datenverlust zu vermeiden.
  • Debugging: Nutze die F8-Taste im VBA-Editor, um den Code schrittweise auszuführen und Fehler zu identifizieren.
  • Kommentare hinzufügen: Kommentiere Deinen Code (mit „'“), um zu erklären, was jeder Teil des Codes macht. Das hilft Dir und anderen, den Code später leichter zu verstehen.

FAQ: Häufige Fragen

1. Wie lösche ich mehrere Zeilen in Excel mit einem Makro?
Du kannst das oben angegebene Makro verwenden, um mehrere Zeilen zu löschen, die bestimmte Bedingungen erfüllen.

2. Kann ich auch bestimmte Spalten löschen?
Ja, Du kannst den Code anpassen, um ganze Spalten zu löschen, indem Du Columns("A").Delete anstelle von Rows(i).EntireRow.Delete verwendest.

3. Was passiert, wenn ich versehentlich die falschen Zeilen lösche?
Wenn Du ein Backup Deiner Datei hast, kannst Du die gelöschten Zeilen wiederherstellen. Alternativ kannst Du die „Rückgängig“-Funktion verwenden, solange die Datei nicht gespeichert wurde.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige