Jak usunąć wiersze na podstawie koloru tła w programie Excel?
Jak możesz usunąć całe wiersze na podstawie koloru tła? W tym przykładzie muszę usunąć wszystkie wiersze, których komórki są wypełnione niebieskim kolorem tła, jak pokazano na zrzucie ekranu. W tym artykule otrzymasz kody do wykonania tego zadania w programie Excel.
Usuń wiersze z określonym kolorem tła na podstawie każdej komórki
Usuń wiersze z określonym kolorem tła na podstawie jednej kolumny
Usuń wiersze z określonym kolorem tła na podstawie każdej komórki
Jeśli masz zakres danych, które zostały losowo wypełnione niektórymi kolorami komórek, i musisz usunąć wiersze, których kolor komórki jest niebieski, jak pokazano na poniższym zrzucie ekranu:
Aby usunąć tego typu wiersze, możesz użyć następującego kodu VBA, wykonaj następujące czynności:
1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.
2. Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.
Kod VBA: Usuń wiersze, których komórki zawierają określony kolor wypełnienia:
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. A następnie naciśnij F5 klucz do uruchomienia tego kodu, a pojawi się okno zachęty przypominające o wybraniu komórki z kolorem wypełnienia, którą chcesz usunąć, zobacz zrzut ekranu:
4. Następnie kliknij OK, a wszystkie wiersze zostały usunięte, jeśli komórka ma określony kolor wypełnienia.
Usuń wiersze z określonym kolorem tła na podstawie jednej kolumny
Jeśli chcesz usunąć wiersze z określonym kolorem na podstawie tylko jednej kolumny, na przykład usuń wiersze z kolorem niebieskim w kolumnie A i uzyskaj poniższy zrzut ekranu, tutaj jest również kod VBA, który może ci wyświadczyć przysługę.
1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.
2. Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.
Kod VBA: Usuń wiersze na podstawie kolumny, której komórki mają określony kolor wypełnienia:
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
Note: W powyższym kodzie, A2: A21 to kolumna zawierająca określony kolor wypełnienia, na podstawie którego chcesz usunąć wiersze, liczba 20 in Wskaźnik koloru = 20 skrypt to indeks koloru, na podstawie którego chcesz usunąć wiersze. Możesz je zmienić według swoich potrzeb.
3. Następnie naciśnij F5 klucz do uruchomienia tego kodu, a wszystkie wiersze, których komórki zawierają niebieski kolor w kolumnie A, zostały natychmiast usunięte.
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!