Как да изтриете редове въз основа на цвета на фона в Excel?
Как бихте могли да изтриете цели редове въз основа на цвета на фона? В този пример трябва да изтрия всички редове, чиито клетки са запълнени със син цвят на фона, както е показано на следната екранна снимка. С тази статия ще получите някои кодове за постигане на тази задача в Excel.
Изтрийте редове със специфичен фонов цвят въз основа на всяка клетка
Изтрийте редове със специфичен цвят на фона въз основа на една колона
Изтрийте редове със специфичен фонов цвят въз основа на всяка клетка
Ако имате набор от данни, които произволно са запълнени с някои цветове на клетката, и трябва да изтриете редовете, чийто цвят на клетката е син, както е показано на следната екранна снимка:
За да изтриете този тип редове, можете да използвате следния VBA код, моля, направете следното:
1. Задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. Щракнете Поставете > Модулии поставете следния код в Модули Window.
VBA код: Изтрийте редове, чиито клетки съдържат конкретен цвят на запълване:
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. И след това натиснете F5 за да изпълните този код и ще изскочи поле за подкана, за да ви напомни да изберете клетка с цвят на запълване, който искате да изтриете, вижте екранна снимка:
4, След това кликнете OKи всички редове са били изтрити, ако клетката е със специфичен цвят на запълване.
Изтрийте редове със специфичен цвят на фона въз основа на една колона
Ако искате да изтриете редовете със специфичен цвят въз основа само на една колона, например, изтрийте редовете със син цвят в колона A и вземете екранната снимка по-долу, тук също има VBA код, който може да ви направи услуга.
1. Задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. Щракнете Поставете > Модулии поставете следния код в Модули Window.
VBA код: Изтрийте редове въз основа на колона, чиито клетки имат конкретен цвят на запълване:
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
Забележка: В горния код, A2: A21 е колоната, която съдържа конкретния цвят на запълване, въз основа на който искате да изтриете редовете, числото 20 in Цветен индекс = 20 script е цветният индекс, въз основа на който искате да изтриете редове. Можете да ги промените според вашите нужди.
3. След това натиснете F5 ключ за изпълнение на този код и всички редове, чиито клетки съдържат синия цвят в колона A, са изтрити наведнъж.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!