仅当单元格是特定颜色时,才执行Excel公式

在“摘要”工作表中,从单元格F4开始,我有以下公式:F13 …

=COUNTIFS('Master Matrix'!L:L,A4,'Master Matrix'!M:M,"Received") 

当然,当公式在F5中时,公式中的“A4”变成“A5”等。

我想要的是像..

 =IF(mycolor<>16,COUNTIFS('Master Matrix'!L:L,A4,'Master Matrix'!M:M,"Received")) 

“mycolor <> 16”应该表示如果背景颜色不是“颜色16”,灰色,#808080或RGB 128,128,128,则执行COUNTIFS。

有人可以帮我解决这个问题吗? 我需要一个VBA函数和\或一个命名的范围来使这个工作?

如果你不想做太多的VBA,你可以创build一个自定义函数。 以下函数将在电子表格中被调用,并带有两个参数。 第一个参数是颜色索引,第二个参数是要引用的单元格。)

将其添加到工作簿中的一个新模块,它应该可用于整个工作簿。

 Public Function IsCellColor(ByVal ColorIndex As Integer, Optional ByRef Reference As Range) If Reference Is Nothing Then Set Reference = ActiveCell If Reference.Interior.ColorIndex = ColorIndex Then IsCellColor = True Else IsCellColor = False End If End Function