条件格式和 vba

conditional formatting and vba

在宏中,我使用以下代码:

With Range("T2:X31")
    .FormatConditions.Delete
    .FormatConditions.Add Type:=xlExpression, Formula1:="=$R2=0"
    .FormatConditions.Add Type:=xlExpression, Formula1:="=$AE2"
    .FormatConditions.Add Type:=xlExpression, Formula1:="=$AF2"
    .FormatConditions(1).Interior.Color = RGB(216, 216, 216)
    .FormatConditions(1).Font.Color = RGB(216, 216, 216)
    .FormatConditions(2).Interior.Color = RGB(255, 40, 40)
    .FormatConditions(2).Font.Color = RGB(255, 255, 255)
    .FormatConditions(3).Interior.Color = RGB(255, 128, 0)
    .FormatConditions(3).Font.Color = RGB(0, 0, 0)
End With

当我检查条件格式规则时,我想在 excel 中得到的是(手动输入):

我得到的是

除了行(1046053 而不是 2)之外一切正常。我应该如何输入单元格引用以获得正确的公式。

尝试在selectA2之前设置条件:

Range("A2").Select

我从未使用过VBA,但我怀疑其条件格式中的公式与当前selection有关。

我认为 select 您实际设置条件的范围更好,就像您在界面上所做的那样:

Range("T2:X31").Select