请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

Chelsey.Wang 讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-23 11:06  /   查看:3236  /  回复:0
本帖最后由 Chelsey.Wang 于 2022-8-16 17:23 编辑

一些格友们可能有这样的疑问:怎么在报表中自定义每行每列的单元格数量呢?
本贴以制作一个自定义日历打卡报表为例,和大家说明一下这个小技巧~

自定义日历打卡报表:
每行展示10天的打卡数据,每10天自动换行,展示日期、星期、初次打卡、最后一次打卡时间,按照部门、姓名分组

原始数据:


实现思路:
1.通过矩表实现自定义换行,使用公式字段作为辅助字段
2.使用表格分组实现按照部门、姓名分组

画出期望的报表样式,观察可知:10格/行时,可以建立一个如图的坐标系,每一列日期值除以10的余数都是相同的,每一行日期除以10的商也都是相同的。
因此我们可以通过公式字段构建出用于行列分组的辅助字段,然后在矩表中通过辅助字段进行分组,实现换行效果。

实现步骤:

【准备工作 - 公式字段】
1.公式字段取到日期的天数
  1. DAY([日期])
复制代码


2.取日期除以10的余数,作为“辅助”字段。日期的字段类型是整数,10也是整数,整形相除向下取整得到日/10的商,日-(日/10)*10 可以计算出日期除以10后的余数。
  1. [日]-([日]/10)*10
复制代码

3.公式字段计算行分组,1-10、11-20、21-30、31号的行分组分别为0、1、2、3;
特别地,10、20、30这些可以被10整除的日期,需要在商的基础上再-1
  1. IF([辅助]=0,([日]/10)-1,[日]/10)
复制代码


4.公式字段计算列分组特别地,为了排序,余数为0时规定列分组是10
  1. IF([辅助]=0,[辅助]+10,[辅助])
复制代码




【设计报表】
1.创建矩表,借助行列辅助字段换行,绘制出日历(注意按照升序排序)

预览效果:


2.在矩表的基础上,在分组内插入行列,绑定星期、上下班打卡时间数据

预览效果:


3.删除矩表中多余的行列


4.创建表格,按照部门、姓名分组,并删除多余行列


5.将刚刚整理好的矩表嵌入表格当中


6.整理一下样式,我这里主要调整了单元格边框的样式,把一些边框的线形调整为了“无”


附上demo









本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 2满意度 +10 收起 理由
sz_xd + 5
赛龙周 + 5

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部