如果单元格无效,我想更改单元格的格式。在这种情况下,“有效”表示单元格未通过数据验证规则。
我问这个问题,因为我找不到答案。我最终解决了它。我会发布我的回答,看看有人想评论或提供更好的答案!
答案 0 :(得分:3)
这是一个基本的大纲,在本周晚些时候,当我有更多时间时,我希望将其转化为更好的格式化答案。
这样:
Public Function IS_VALID(row, column) As Boolean
IS_VALID = Not Cells(row, column).Validation.value
End Function
最后,您可以将条件格式设置效果设置为您想要的任何效果,例如将单元格着色为红色。这个答案对我有用,我想不要忘记把它添加到SO中,但是现在没有时间把它变得很好。
答案 1 :(得分:0)
如果要引用另一个工作簿中的列表,则将数据验证规则重新创建为条件格式设置规则更为简单。
如果您的条件格式设置从Sheet1的单元格A1开始,并且列表包含在Sheet2的A1:A10中,那么您的条件格式设置规则将是:
=AND($A1<>0,COUNTIF(Sheet2!$A$1:$A$10,$A1)<1)
如果该单元格的值未出现在源列表中且不为空白,则会突出显示该单元格。
很显然,对于基于非列表的数据验证,您可以以相同的方式提出一个等效公式。
您可以通过为数据验证和条件格式设置所引用的列表设置一个命名范围来使事情变得更加健壮,这样,如果列表范围增大,则只需要在一个位置进行编辑(名称管理器),它将同时更新数据验证和条件格式设置范围。