【问题标题】:Formatting rows according to grouping column after filtering based on another column基于另一列过滤后根据分组列格式化行
【发布时间】:2015-10-26 19:16:43
【问题描述】:

我有一个如下的工作表。

A B
a 3
a 3
a 3
b 2
b 2
c 1
d 2
d 2
e 1
f 3
f 3
f 3
g 2
g 2
h 1
i 3
i 3
i 3

我想在基于 B 过滤后,根据 A 列中的组为行提供替代颜色。如何在 excel 中执行此操作?

我知道不过滤也可以做到 (How to format rows to color group by like values in column 1)。

【问题讨论】:

  • 您的意图不明确。你想要第一个和第三个 a 的颜色,然后是第二个 f 然后是第一个和第三个 i 因为它们与 3 的关联 在第二列?

标签: excel conditional-formatting


【解决方案1】:
  • 选择A2:B19
  • 条件格式 -> 新规则
  • 使用公式确定要格式化的单元格
  • 输入以下公式:

=MOD(SUMPRODUCT(1*($A$1:$A1<>$A$2:$A2),SUBTOTAL(3,OFFSET($B$2:$B2,ROW($B$2:$B2)-MIN(ROW($B$2:$B2)),0,1))),2) = 1

  • 选择格式

带有2过滤器的示例输出:

SUMPRODUCT 的第一部分计算组更改的次数。 SUBTOTAL 作为第二个参数排除了不可见的行。

注意:上述公式相当复杂且易变,可能会影响大数据集的性能。

【讨论】:

  • 如果同一组中有过滤的行,此解决方案将失败,除非数据按列排序B -- i.imgur.com/xc1ij3t.png
【解决方案2】:

仅使用与 B 列中的 3 的关联,我想出了以下内容。

        

A1:B18 的 CF 规则是根据以下公式创建的。

=AND($B1=3, MOD(COUNTIF($B$1:$B1, 3), 2))

必须为 B 列中具有 12 的行创建带有修改公式的附加 CF 规则。

【讨论】:

  • 此解决方案不会突出显示列A 中的分组值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-08
  • 2020-08-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-15
  • 1970-01-01
相关资源
最近更新 更多