文章 查看内容

复杂报表如何实现分组拓展隔行换色

复杂报表如何实现分组拓展隔行换色

129 1 中国式报表 2024-8-30 10:32 发布者: 观小益

背景:在复杂报表中,维度归类合并展示,数值根据维度拓展,希望可以隔行换色,且数值需要根据维度分组拓展实现:现有的条件格式比如数据条、色阶都只能作用在设置的单元格上,其他字段的条件格式无法跟随父格拓展, ...

背景:在复杂报表中,维度归类合并展示,数值根据维度拓展,希望可以隔行换色,且数值需要根据维度分组拓展

实现:现有的条件格式比如数据条、色阶都只能作用在设置的单元格上,其他字段的条件格式无法跟随父格拓展,需要新建规则使用公式实现

步骤:
(1)在模板编辑界面-开始-条件格式-新建规则,选择“使用公式确定要设置格式的单元格”,添加公式:=MOD(COUNTA($A$3:$A3),2),能交替着着色相邻的行。公式含义下文会具体解释

(2)设置需要的条件格式,生效范围设置=$A$3:$B$3,表示对A列和B列生效。

(3)如果希望不同列能根据表头不同单元格生效不同的背景色,比如根据表头呀分组分别设置,就需要设置多条规则,通过生效范围调整,规则内容一致,第二条范围可以是 =$C$3:$I$3,以此类推。最终效果如下图所示。

【注】以下是对 “=MOD (COUNTA ($A$3:$A3),2)” 这个公式的解释:

(1)公式组成部分分析

COUNTA($A$3:$A3):

COUNTA函数用于计算指定范围内非空单元格的个数。

$A$3:$A3是一个动态的范围,随着公式向下填充,这个范围会逐渐扩大,例如在第四行时,范围变为$A$3:$A4。这个范围从 A3 单元格开始,到公式所在行的 A 列单元格为止。

MOD(COUNTA($A$3:$A3),2):

MOD函数是一个求余函数,它有两个参数,第一个参数是被除数,这里是COUNTA($A$3:$A3)的结果,即 A3 及以上部分非空单元格的个数;第二个参数是除数,这里是 2。

(2)整体功能解释

这个公式的主要作用是判断从 A3 单元格开始到当前行的 A 列中,非空单元格的个数是奇数还是偶数。具体来说:

如果非空单元格的个数是偶数,那么MOD(COUNTA($A$3:$A3),2)的结果为 0。

如果非空单元格的个数是奇数,那么结果为 1。

例如:

当 A3 到 A5 中只有 A3 和 A5 有内容时,COUNTA($A$3:$A5)的结果为 2,MOD(2,2)的结果为 0。

当 A3 到 A6 中只有 A3、A5 和 A6 有内容时,COUNTA($A$3:$A6)的结果为 3,MOD(3,2)的结果为 1。



路过

雷人

握手

鲜花

鸡蛋
Guandata_78a276922024-11-5 13:45
很容易懂的逻辑,但我自己不一定能想到,厉害了
回复
您需要登录后才可以发表言论 登录立即注册
微信服务号
联系我们
电话:400-880-0750
邮箱:hello@guandata.com
Copyright © 2001-2024 观远社区 版权所有 All Rights Reserved. 浙 ICP 备15006424号-3
去评论 去发文 返回顶部
返回顶部