历史版本5 :计算两个时间相差的时分秒 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

注:此方法仅支持相差24个小时以内的时间差计算。

在报表中经常要计算两个时间之间相差了多少小时多少分钟多少秒,常规的做法是先算出两个时间相差的总秒数,总秒数除以60求余得到秒数,总秒数除以60的商进位到分钟,然后照理对分钟进行计算,过程非常繁琐。用户希望通过简单的方法事项相差时分秒的计算,达到如下图所示的效果:

1.2 实现思路

将时间统一转化为自 1970 年 1 月 1 日 00:00:00GMT 经过的毫秒数,相减后再转化为时分秒。

2. 示例编辑

2.1 新建数据集

新建内置数据集,数据如下:

2.2 报表设计

在 A1、B1、C1 单元格中分别填入:开始时间,结束时间,相差时分秒,将开始时间拖入 A1 单元格中,结束时间拖入 B2 单元格中,如下图所示:

2.3 时间计算公式

1)选中 C2 单元格,输入计算公式:format(TODATE(datetonumber(B2)-datetonumber(A2)-8*3600*1000),"H时m分s秒"),如下图所示:

2)公式解析:

8*3600*1000 即8小时换算成毫秒数。

这里减去8小时是应为datetonumber()函数返回的是自1970年1月1日00:00:00GMT经过的毫秒数。

GMT是格林尼治标准时间,北京时间比GMT时间快 8 小时,所以要减去 8 小时。

2.4 效果预览

2.4.1 PC端

保存模板,分页预览,效果如 1.1 节所示。

2.4.2 移动端

App 与 HTML5 端效果相同,如下图所示:

3. 模板下载编辑