检查 Excel 单元格的字体是否是某种颜色?

检查 Excel 单元格的字体是否是某种颜色?

我想使用 vba 检查 excel 中单元格中的文本是否为特定颜色,比如红色。有什么想法吗?

答案1

我想使用 VBA 检查 Excel 单元格中的文本是否具有特定颜色

比如说红色

您可以使用Font.ColorIndex

请参阅下面的示例。

要检索单元格颜色使用:

=GetFontColor(A1)

VBA – 获取字体颜色函数

例如,当我们的工作表数据中有颜色时,我们想要计算工作表上有多少个“红色”单词,这是不可能的,因为 Excel 中没有公式来检查字体颜色。相反,我们可以创建自己的 VBA 函数来获取字体颜色。这是一个非常简单的代码。您必须将其插入工作表上的 VBA 模块中。

Function GetFontColor(ByVal Target As Range) As Integer
    GetFontColor = Target.Font.ColorIndex
End Function

然后,您就可以像这样在您的工作表上使用它:

=GetFontColor(A2)

下面是如何使用此功能的示例。在 C 列中,我们将 A 列中的文本的字体颜色设置为。

替代

要计算 A 列中“红色”单词的数量,我们可以使用:

COUNTIF(C2:C9,3)

公式中的3表示红色。

来源VBA – 获取字体颜色函数。脚本已进行调整以满足问题的要求。


如果我想要单元格颜色怎么办?

使用以下函数:

Function GetCellColor(ByVal Target As Range) As Integer
    GetCellColor = Target.Interior.ColorIndex
End Function

要检索单元格颜色使用:

=GetCellColor(A1)

来源根据背景颜色对单元格求和。脚本已进行调整以满足问题的要求。


进一步阅读

相关内容