如果值出错,我已有条件地格式化工作表以更改单元格的颜色。这用于数据验证,用户可以立即将大量数据剪切并粘贴到工作表中。
我想写一个宏(我将链接到一个按钮)来查找并转到带有条件格式的第一个单元格,然后是下一个等等。到目前为止,没有运气。如果最终无法做到这一点,我可能会删除条件格式并使用宏更改单元格颜色,以便使用VBA更容易检测到它。
我可以通过
检测是否存在任何条件格式如果ActiveCell.DisplayFormat.Interior.Color<> 16777215
但是很难将它放入find子中。
更具体地说,列A-AF具有值,如果它们不满足条件,则格式化为红色。我喜欢查找按钮的副本,但需要条件格式。有没有人有什么建议。我已经看过类似的问题,但他们似乎在询问计数或总数,而这并不是我真正需要的。提前谢谢。
答案 0 :(得分:1)
这是一个函数,它返回一个已经有条件地格式化为浅红色背景的单元格地址数组。编辑以适合您的目的。
Public Function FindConditionals() As Variant
Dim ws As Worksheet, cCell As Range, cntr As Integer
Dim formattedCells(100) As Variant ' I would used the number of cells in used range here
Set ws = ActiveSheet
cntr = 1
For Each cCell In ws.UsedRange
If cCell.DisplayFormat.Interior.Color = 13551615 Then ' put your own color in
formattedCells(cntr) = cCell.Address
cntr = cntr + 1
End If
Next cCell
FindConditionals = formattedCells
End Function
答案 1 :(得分:0)
使用" Go To Special" Excel中的功能。
在首页功能区上,单击查找并选择>去特别。
然后选择条件格式选项。单击“确定”,将选择具有条件格式的所有单元格。