1、如果你要检查范围 B1 到 AQ1 中的任意一个单元格是否为红色,你可以自定义函数 FontColorisRed 来实现。下面是修改后的代码:
-
打开Excel文件,按下Alt + F11打开Visual Basic for Applications(VBA)编辑器。
-
在VBA编辑器中,插入一个新的模块。右键点击项目资源管理器中的"Microsoft Excel 对象",选择"插入" -> “模块”。
-
在模块中,复制粘贴以下函数代码,:
Function AnyCellRedColor(Rng As Range) As Boolean
Dim cell As Range
For Each cell In Rng
If cell.Font.ColorIndex = 3 Then #这里字体颜色为红色,如果想标记为其他颜色修改对应颜色的索引号就行
AnyCellRedColor = True
Exit Function
End If
Next cell
AnyCellRedColor = False
End Function
- 保存。
2、然后,在Excel表格中选中对应行单元格例如A1,使用条件格式来设置单元格值为1时字体颜色为红色,请按照以下步骤进行操作:
- 在Excel的主菜单栏中,点击"开始"选项卡。
- 在"样式"组中,点击"条件格式"按钮,然后选择"新建规则"。
- 在"新建格式规则"对话框中,选择"使用公式确定要格式化的单元格"选项。
- 在"格式值"输入框中,输入以下公式:
=AnyCellRedColor(B1:AQ1) =1
- 这里使用相对引用,可以使用格式刷将剩余行刷一下
- 然后点击"格式"按钮,然后在"字体"选项卡中选择红色字体颜色。
该函数会遍历指定范围内的每个单元格,并检查它们的字体颜色是否为红色(颜色索引为3)。如果有任意一个单元格的字体颜色为红色,则函数返回1,否则返回0,并且通过条件格式标记对应单元格颜色