Excel有没有判断颜色的函数?

来源:百度知道 编辑:UC知道 时间:2024/05/22 22:42:51
我想把表中没颜色的行都删除,有吗?

用VBA吧,打开要处理的工作簿,选中要处理的工作表,按ALT+F11,粘贴以下内容后按F5执行完再关闭Microsoft Visual Basic窗口看执行效果。
成功使用的几个前提:
1、你说的有颜色的行必须包括到A列,比如第10行有颜色,那就要求A10里面有颜色。否则请修改相应代码;
2、你说的有颜色的行必须在A列有数据,比如第10行有颜色,那就要求A10里面有数据,不能是空。否则请修改相应代码;
3、处理的工作表名称为sheet1。否则请修改相应代码。

'代码开始===========================================================
Private Sub Deleter()
Dim i, j As Integer
j = Sheets("sheet1").Range("A65536").End(xlUp).Row
For i = 1 To j
Range("A" & i).Select
If ActiveCell.Interior.ColorIndex = -4142 Then
Rows(i & ":" & i).Select
Selection.Delete Shift:=xlUp
End If
Range("A" & i).Select
If ActiveCell.Interior.ColorIndex = -4142 And ActiveCell.Value <> "" Then
i = i - 1
End If
Next i
End Sub
'代码结束===========================================================

用宏代码可以实现。

可添加辅助列,用宏表函数GET.CELL得到颜色值.再进行筛选删除.