计数有色单元格不适用于Excel中的条件格式

尝试使用这个VBA代码来计算我的工作表上某些彩色单元格的数量:

Function CountRed(MyRange) CountRed = 0 For Each Cell In MyRange If Cell.Interior.Color = RGB(255, 0, 0) Then CountRed = CountRed + 1 End If Next Cell End Function 

基本上,计数红细胞的数量。 现在,这工作正常,如果我自己的颜色,但如果我把条件格式在我的工作表来颜色这些单元格不起作用。

这是我的情况:

 =AND(NOT(ISBLANK(A3)),ISBLANK(D3)) 

基本上如果第一个单元格填充,这一个不是然后颜色红色。

现在,当我使用我的'CountRed'函数来查看这个单元格(带有条件格式的单元格)是否是红色的时候,它不起作用,但是当我'覆盖'它时,即填充它自己,然后再次运行该函数。

我想也许这是在CountRed函数之前调用的条件格式,但我没有任何运气:(

这是因为条件格式不是Interior.color集合的一部分,因此不能被读取或计数。 根据条件格式的单元格中的底层值是什么,你可以计算字面值。

例如,将单元格值设置为红色,绿色,黄色,但设置条件格式可将背景和前景色设置为相同。 (即红色红色,绿色绿色等)。这样你就可以计算一些东西。 使用您正在解释的值来获取条件颜色作为要计算的列。