我想使用 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)
来源根据背景颜色对单元格求和。脚本已进行调整以满足问题的要求。