历史版本4 :显示当月最后一天准确时间 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 应用场景

想要将当月最后一天和 23:59:59 拼接在一起,显示在报表中。

例如现在是 7 月,那么打开报表后,显示的日期如下图所示:

Snag_44546836.png

1.2 实现思路

  • 需要解决的第一个问题,动态获取当月最后一天:借助MONTHDELTA、DATEINMONTH、TODAY三个函数实现

  • 需要解决的第二个问题,怎么显示固定的时分秒:借助TIME函数实现。

  • 需要解决的第三个问题,怎么将它们拼接在一起:公式分别写在相邻单元格,调整单元格位置靠近即可。

2. 示例编辑

2.1 获取当月最后一天

A1 单元格插入公式:MONTHDELTA(DATEINMONTH(TODAY(), -1), 0),该公式可以获取当月最后一天。

Snag_44616e71.png

2.2 显示固定时分秒

B1 单元格插入公式:TIME(23, 59, 59),该公式显示固定的时分秒 23:59:59 。

Snag_44668684.png

2.3 调整单元格位置

缩短 A1 单元格的宽度,让 2 个单元格的内容靠在一起。

Snag_446b5b27.png

2.4 效果预览

保存报表,分页预览效果如 1.1应用场景 中所示。

支持 App 端和 HTML5 端预览。

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\function\显示当月最后一天.cpt

点击下载模板:显示当月最后一天.cpt

4. 场景拓展编辑

  • 获取上一个月最后一天:MONTHDELTA(DATEINMONTH(TODAY(), -1), -1),就是把最后一个参数改成 -1 即可,上上个月就是 -2 ,依次递推即可。

  • 获取下一个月最后一天:MONTHDELTA(DATEINMONTH(TODAY(), -1), 1),就是把最后一个参数改成 1 即可,下下个月就是 2 ,依次递推即可。

  • 获取当月第一天:MONTHDELTA(DATEINMONTH(TODAY(),1),0)

  • 获取上一个月第一天:MONTHDELTA(DATEINMONTH(TODAY(),1),-1),就是把最后一个参数改成 -1 即可,上上个月就是 -2 ,依次递推即可。

  • 获取下一个月第一天:MONTHDELTA(DATEINMONTH(TODAY(),1),1),就是把最后一个参数改成 1 即可,下下个月就是 2 ,依次递推即可。