Excel:一组行的格式颜色,根据这些行的最大值

Excel: Format Color of A Group of Rows Based on the Maximum Value of these Rows

我有以下问题。给定数据:

城市开始

1 2000-01-01

1 2002-02-01

1 2002-02-01

2 2002-02-01

2 2003-02-01

2 2005-12-01

3 2002-04-01

3 2003-07-01

3 2005-12-01

我想按行所属的城市对行进行分组。对于每个组,如果该组中的最大日期不等于 2005-12-01,我想将该组中的所有行着色为红色,否则为蓝色。在示例数据中,这意味着所有包含城市 1 的行都是红色的,而包含城市 2 和 3 的行是蓝色的。

有办法实现吗?谢谢!

非VBA方法:

  • 条件格式 -> 新规则...
  • Select "Format all cells based on thier values"
  • 格式样式 =“2 色标”
  • 颜色 = [根据需要]

VBA方法:

Dim rng As Range

Set rng = ActiveSheet.Range("A1:A10") 'or where-ever.
With rng.FormatConditions
    .AddColorScale 2
    With .Item(1).ColorScaleCriteria(1)
        .Type = xlConditionValueLowestValue
        .FormatColor.Color = 15773696
    End With
    With .Item(1).ColorScaleCriteria(2)
        .Type = xlConditionValueHighestValue
        .FormatColor.Color = 255
    End With
End With

编辑:已经晚了,所以在再次阅读问题后我可能已经颠倒了颜色......强调"As needed"。