行分栏隔行变色保持同行变色对齐

1.概述

1.1 应用场景

若对表格设置了隔行变色,又设置了分栏,可能会出现变色错位的情况,希望实现同行变色对齐。如下图所示:

1.2 实现思路

在「条件格式」中利用「公式」实现。

先根据分栏列数和数据总数判断出需要特殊处理的栏位,对需要特殊处理的奇数行栏位进行处理,最后符合条件的行进行隔行变色。

2. 示例

示例数据:销量.xlsx

2.1 创建分析表

下载并上传示例数据,将数据添加至项目中,如下图所示:

2.2 新建复杂表格

点击添加按钮,选择「复杂表格」,如下图所示:

2.3 设计复杂表格

1)A1~A3 单元格输入文本,A2~C2 单元格拖入相应的数据列,如下图所示:

2)A2 单元格数据设置为列表,如下图所示:

2.4 设置行分栏

设置行分栏,分栏成 2 列,分栏数据为:A2:C2,复制行序列为 1 ,如下图所示:

2.5 设置条件格式

选中 A2 单元格,点击右侧属性面板添加一个条件格式,选择类型为「背景」,颜色为「蓝色」,作用于「当前行」。点击「条件设置」,设置条件为「公式」,输入公式:

ROUNDUP(COUNT(A2[!0])/2,0)%2<>0&&(&A2+(1-ROUNDUP(&A2/ROUNDUP(COUNT(A2[!0])/2,0),0)%2))% 2=0||ROUNDUP(COUNT(A2[!0])/2,0)%2=0&&&A2%2=0

注:公式由 4 个条件组成,公式之间使用 && 和 || 连接,按从左往右执行计算,当报表满足公式一时,按公式二显示背景色,当报表满足公式三时,按公式四显示背景色。

公式说明如下表所示:

分类

公式

说明

公式一

A2[!0]

A2 扩展出来的所有单元格

COUNT(A2[!0])

统计当前数据的总行数

COUNT(A2[!0])/2

将总行数除以分栏的列数 2,表示每栏的行数

ROUNDUP(COUNT(A2[!0])/2,0)

向上取整,确保每栏的行数为整数

ROUNDUP(COUNT(A2[!0])/2,0)%2<>0

计算结果被 2 整除余数不等于 0,

表示该栏的行数为奇数

公式二

ROUNDUP(&A2 / ROUNDUP(COUNT(A2[!0])/2,0),0)

计算当前行号所在的栏数

1-ROUNDUP(&A2/ROUNDUP(COUNT(A2[!0])/2,0),0)%2

根据栏数的奇偶性调整偏移量

&A2+(1-ROUNDUP(&A2/ROUNDUP(COUNT(A2[!0])/2,0),0)%2)

将当前行号与偏移量相加

(&A2+(1-ROUNDUP(&A2/ROUNDUP(COUNT(A2[!0])/2,0),0)%2))% 2=0

判断调整后的行号是否为偶数

公式三

ROUNDUP(COUNT(A2[!0])/2,0)%2=0

计算结果被 2 整除余数等于 0,表示该栏的行数为偶数

公式四

&A2%2=0

判断当前行号是否为偶数

步骤如下图所示:

2.6 效果预览

预览表格,行分栏隔行变色实现了同行变色对齐,如下图所示:

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验