我需要我的宏来删除包含红色单元格的行。
我首先对包含红色单元格的列进行排序,使空白单元格位于顶部,然后手动单击顶部的红色单元格(第 100 行)并使用 Ctrl-Shift-Down 突出显示其余单元格。因此,我的部分代码如下所示:
ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Add2 _
Key:=Range("Table1[[#All],[First Name]]"), SortOn:= _
xlSortOnCellColor, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=1, Criteria1:=RGB _
(255, 0, 0), Operator:=xlFilterCellColor
Rows("100:150").Select
我如何修改最后一部分,以便我的宏检测红色单元格然后突出显示它们,这样无论我有多少个单元格它都能工作我的床单?
提前致谢。
答案 0 :(得分:1)
下面的代码应该给你你想要的。按单元格颜色使用 AutoFilter
并整体删除。让我知道你是怎么做的。
Option Explicit
Sub DeleteByColor()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
With ws.ListObjects("Table1").Range
.AutoFilter 1, RGB(255, 0, 0), 8
.Offset(1).Resize(.Rows.Count - 1).EntireRow.Delete
.AutoFilter
End With
End Sub