IF语句触发特定的条件格式?

时间:2018-12-13 14:14:32

标签: excel vba excel-vba

我有一条IF语句,如果将评估结果放在BC列中,则会触发该语句。

一些信息将被填写,但有时会有一些空白单元格。如果标题中有名称,我将触发条件格式:

If Range("C4") <> "" Then
    Call Compliance_Heatmapping
End If

,如果两个结果之间存在差异,则使用公式触发D列中的单元格:

With .Range("D5:D27)
         .FormatConditions.Add Type:=xlExpression, Formula1:="=$B5<>$C5"
etc... etc... to format it
End With

但是有一种方法可以避免仅在BC任一列中都包含数据,而不能同时包含两者时都突出显示吗?有时,评估结果可能会不一致,其中经理仅完成一半,而员工完成全部,而我只希望将其应用于该行两列中都有数据的情况。

2 个答案:

答案 0 :(得分:1)

您的条件格式设置功能必须像这样

AND($B5<>$C5,(not(ISBLANK(B5))+not(ISBLANK(C5))>1))

NOT是逻辑反转,因此ISBLANK检查单元格是否为空白,因此NOT(ISBLANK)检查填充。 TRUE = 1 FALSE = 0,因此TRUE和TRUE = 2,TRUE和FALSE = 1,FALSE和FALSE = 0

答案 1 :(得分:0)

尝试:

If .Range("C4") <> "" Then
    If .Range("B5").value <> "" And If .Range("C5").value <> "" Then
        Call Compliance_Heatmapping
    End If
End If