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
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 TomUm ein Makro zu erstellen, das bestimmte Zeilen in Excel löscht, kannst Du folgende Schritte befolgen:
Excel öffnen: Starte Microsoft Excel und öffne die Datei, in der Du die Zeilen löschen möchtest.
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“.
VBA-Editor öffnen: Klicke auf „Entwicklertools“ und dann auf „Visual Basic“, um den VBA-Editor zu öffnen.
Modul einfügen: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ > „Einfügen“ > „Modul“, um ein neues Modul zu erstellen.
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
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“.
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.
Falls Du keine Makros verwenden möchtest, kannst Du auch die Filterfunktion nutzen:
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
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.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen