在If语句中使用Font.Color作为条件

时间:2019-04-26 13:33:50

标签: excel vba

我当前正在尝试使用字体颜色作为条件来检查if语句。似乎非常容易,但是VBA似乎无法做到。

我无法显示我的实际代码,因为其中包含专有信息,但是我什至尝试了简单的代码版本,但无济于事。该代码如下所示。

Sub Testing()

Cells(1,1).Font.Color = -16776961
If Cells(1,1).Font.Color = -16776961 Then
     Cells(1,3) = "Worked!"
Else
     Cells(1,3) = "Didn't Work!"
End If

End Sub

第一行代码实际上将字体颜色或单元格A1更改为红色。但是,由于某些原因,条件语句不起作用。

2 个答案:

答案 0 :(得分:3)

请改用RGB函数。 (不确定负值到底是哪里来的吗?)

Sub Testing()

Cells(1, 1).Font.Color = RGB(255, 0, 0)
If Cells(1, 1).Font.Color = RGB(255, 0, 0) Then
     Cells(1, 3) = "Worked!"
Else
     Cells(1, 3) = "Didn't Work!"
End If

End Sub

答案 1 :(得分:3)

您应像这样使用RGB

Cells(1,1).Font.Color = RGB(255, 0, 0)
If Cells(1,1).Font.Color = RGB(255, 0, 0) Then
     Cells(1,3) = "Worked!"
Else
     Cells(1,3) = "Didn't Work!"
End If