在Excel中,根据连续范围中的最后一个单元格格式标题行的颜色

时间:2016-05-25 04:59:40

标签: excel excel-formula

我可能已经过度思考了这一点,但我已经在这里工作了好几个小时而无法让它发挥作用。

我的工作表设置为联系人日志,其中某些行(在A列中包含ID#的行)用作"标题"。在每个"标题下面#34;我正在列B中记录日期。通常,标题行是绿色的。但我希望Excel能够检查每个"标题下的B列中的最后一个日期" (例如,ID#101为5/24/16,ID#102为5/13/16等)。如果最后一个日期距离今天的日期(目前为5/25/16)超过1周,我想要"标题"一行变为红色:

A            B
ID#          DATE
101 (green)
             5/1/16
             5/20/16
             5/24/16
102 (red)
             5/2/16
             5/13/16
103 (green)
             5/7/16
             5/19/16

如果我要添加一行并输入今天102以下的日期,标题行将变回绿色。

A            B
ID#          DATE
101 (green)
             5/1/16
             5/20/16
             5/24/16
102 (green)
             5/2/16
             5/13/16
             5/25/16
103 (green)
             5/7/16
             5/19/16

我很乐意使用条件格式来改变颜色,但我真的很难找到一个公式,它将引用有限值范围内的最后一个值(在B列中)。我希望这是有道理的,任何帮助都会非常感激!

1 个答案:

答案 0 :(得分:1)

给A2一个默认的绿色填充,然后选择A2并添加一个带有红色填充的基于公式的条件格式:

 =OFFSET(B2,IFERROR(MATCH(TRUE,A3:A40<>"",0)-1, COUNTA(B3:B40)),0)<(TODAY()-7)

将“A40”扩展到您希望它覆盖您在单个区块中所期望的最大日期数的点(即,它需要包含至少下一个“报头“)。

您可以复制&gt; pastespecial&gt;将CF扩展到其他标题单元格的格式

enter image description here

IFERROR,COUNTA是为了覆盖下面没有“标题”的情况,所以我们只计算ColB中的值的数量(假设在该列中没有其他任何东西)

未经过广泛测试,但似乎确实有效