【问题标题】:Conditional formatting based on previous cells while skipping empty cells基于先前单元格的条件格式,同时跳过空单元格
【发布时间】:2019-01-07 04:49:37
【问题描述】:

我想要条件格式,如果单元格为“1”,则单元格为深绿色,并且较高行(页面下方)中的下 3 个非空单元格也是“1”。例如,这张图片中的所有内容都是正确的除了右上角的“1”应该是深绿色:

最左边的列很简单。中间列的顶部单元格不是深绿色,因为 1 的条纹被 0 打破了。正如我上面提到的,最右边的列是不正确的。

这是我目前的条件格式:

=AND(
  EQ(INDIRECT(ADDRESS(ROW(), COLUMN())), INDIRECT(ADDRESS(ROW()+1, COLUMN()))),
  EQ(INDIRECT(ADDRESS(ROW(), COLUMN())), INDIRECT(ADDRESS(ROW()+2, COLUMN()))),
  EQ(INDIRECT(ADDRESS(ROW(), COLUMN())), INDIRECT(ADDRESS(ROW()+3, COLUMN())))
)

但这实际上只是检查当前单元格是否与三个较低的单元格匹配。如何跳过任意数量的空单元格?

【问题讨论】:

    标签: excel google-sheets


    【解决方案1】:

    可以通过重复使用offset来完成:

    (1)获取包含三个非空白单元格的最小范围

    (2) 检查此范围是否包含三个 1:

    =AND(A1=1,COUNTIF(OFFSET(A2,0,0,MATCH(3,COUNTIF(OFFSET(A2,0,0,ROW($1:$10)),"<>"),0)),1)=3)
    

    请注意,您需要选择向前看的单元格数(此处设置为 10)。您可以一直向前看,直到您正在格式化的范围的底部,但最终可能会遇到性能问题。

    【讨论】:

      猜你喜欢
      • 2013-06-29
      • 1970-01-01
      • 2018-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-17
      • 2023-03-26
      相关资源
      最近更新 更多