对日历类报表实现的补充

日历类报表的实现,请参考大佬写的帖子

日历类报表可以这样实现

这个示例内,主要是针对于每天一条数据的功能的实现。

昨天遇到了一个类似的需求,但是要求每天的数据是多条的情况。
几经波折,最终问题得到解决,实现效果如下图所示

imagepng

实现方式如下:

表结构来说,作出日历的样式暂时略过,请参考 日历类报表可以这样实现

下面介绍下多条数据的展示

需要用到的是 to 函数与 valueat 的结合使用

imagepng

因为 C5 的值是多条,且每天的数据互相之间无关联,所以需要单独来写
C4 单元格 =ds1.count(day(calendar_begin)==C3) 获取每天需要显示的总条数
B5 单元格 =to(0,max(C4{})-1)函数扩展,其中 max() 获取一周中每天的条数的最大值
to 函数从 0 开始扩展 是因为 valueat 的取值是从 0 开始的 0 表示第一条 所以 max(C4{})-1 同样的道理

valueat 函数,则根据扩展的条数决定显示 select 数据的第几条

valueat 函数说明:

根据指定位置返回数组或者集合表达式中的某一个元素

根据指定位置返回数组或者集合表达式中的某一个元素

语法:
valueat(arrayexp,suffixExp)
参数说明:
arrayexp 数组或者集合表达式
suffixExp 整数,用于指定返回集合中的第几个元素,以 0 开始计数
返回值:
集合中的一个元素,数据类型由集合中的元素类型决定
示例:
例 1:valueat(to(5,8),2) 返回值为:7
例 2:valueat([“a”,“b”,“c”],2) 返回值为:“c”

详情链接:http://c.raqsoft.com.cn/article/1565685523732?r=gxy

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值