Wie kann man Zeilen basierend auf der Hintergrundfarbe in Excel löschen?
Wie könnten Sie ganze Zeilen basierend auf der Hintergrundfarbe löschen? In diesem Beispiel muss ich alle Zeilen löschen, deren Zellen mit einer blauen Hintergrundfarbe gefüllt sind, wie im folgenden Screenshot gezeigt. Mit diesem Artikel erhalten Sie einige Codes, um diese Aufgabe in Excel auszuführen.
Zeilen mit bestimmter Hintergrundfarbe basierend auf jeder Zelle löschen
Zeilen mit bestimmter Hintergrundfarbe basierend auf einer Spalte löschen
Zeilen mit bestimmter Hintergrundfarbe basierend auf jeder Zelle löschen
Wenn Sie einen Datenbereich haben, der zufällig mit einigen Zellfarben gefüllt ist, und Sie müssen die Zeilen löschen, bei denen die Zellenfarbe blau ist, wie im folgenden Screenshot gezeigt:
Um diesen Typ von Zeilen zu löschen, können Sie den folgenden VBA-Code verwenden, bitte gehen Sie wie folgt vor:
1. Halten Sie die Tasten ALT + F11 gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code in das Modulfenster ein.
VBA-Code: Zeilen löschen, deren Zellen eine bestimmte Füllfarbe enthalten:
Sub DeleteRows()
'Updateby Extendoffice
Dim rngCl As Range
Dim xRows As Long
Dim xCol As Long
Dim colorLg As Long
On Error Resume Next
Set rngCl = Application.InputBox _
(Prompt:="Select a cell with the background color to be deleted", _
Title:="Kutools for Excel", Type:=8)
On Error GoTo 0
If rngCl Is Nothing Then
MsgBox "User cancelled operation." & vbCrLf & _
"Processing terminated", vbInformation, "Kutools for Excel"
Exit Sub
End If
colorLg = rngCl.Interior.Color
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
For xRows = .Rows.Count To 1 Step -1
For xCol = 1 To .Columns.Count
If .Cells(xRows, xCol).Interior.Color = colorLg Then
.Rows(xRows).Delete
Exit For
End If
Next xCol
Next xRows
End With
Application.ScreenUpdating = True
End Sub
3. Drücken Sie dann die F5-Taste, um diesen Code auszuführen, und ein Hinweisfenster wird angezeigt, das Sie daran erinnert, eine Zelle mit der Füllfarbe auszuwählen, die Sie löschen möchten, siehe Screenshot:
4. Klicken Sie dann auf OK, und alle Zeilen wurden gelöscht, wenn die Zelle eine bestimmte Füllfarbe hat.
Zeilen mit bestimmter Hintergrundfarbe basierend auf einer Spalte löschen
Wenn Sie die Zeilen mit einer bestimmten Farbe nur basierend auf einer Spalte löschen möchten, zum Beispiel die Zeilen mit Blau in Spalte A löschen und das untenstehende Screenshot erhalten, gibt es auch einen VBA-Code, der Ihnen helfen kann.
1. Halten Sie die Tasten ALT + F11 gedrückt, um das Fenster Microsoft Visual Basic for Applications zu öffnen.
2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code in das Modulfenster ein.
VBA-Code: Zeilen basierend auf einer Spalte löschen, deren Zellen eine bestimmte Füllfarbe haben:
Sub deleterow()
'UpdateBY Extendoffice
Dim xRg As Range, rgDel As Range
For Each xRg In ThisWorkbook.ActiveSheet.Range("A2:A21")
If xRg.Interior.ColorIndex = 20 Then
If rgDel Is Nothing Then
Set rgDel = xRg
Else
Set rgDel = Union(rgDel, xRg)
End If
End If
Next xRg
If Not rgDel Is Nothing Then rgDel.EntireRow.Delete
End Sub
Hinweis: Im obigen Code ist A2:A21 die Spalte, die die spezifische Füllfarbe enthält, auf deren Basis Sie die Zeilen löschen möchten; die Zahl 20 im Skript ColorIndex = 20 ist der Farbindex, auf dessen Basis Sie die Zeilen löschen möchten. Sie können diese nach Bedarf ändern.
3. Drücken Sie dann die F5-Taste, um diesen Code auszuführen, und alle Zeilen, deren Zellen in Spalte A die blaue Farbe enthalten, werden sofort gelöscht.
Beste Büroproduktivitätswerkzeuge
Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
- Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!