首页 > 解决方案 > 结束时间戳跨到午夜的 2 个时间戳之间的 Google 表格持续时间

问题描述

我有一张表,我正在计算两个时间戳之间的持续时间。

例如,我有 column A,它是开始时间,而 column B,它是停止时间。A和都B被格式化为Time. 列C保存 和 之间的持续时间并格式化为。ABDuration

该公式=SUM(B1 - A1)在大多数情况下都可以正常工作,直到我达到B1第二天午夜的情况

例如,如果我有以下内容:

  A   |     B     |     C
------------------------------
23:30 |   23:40   |   0:10:00
23:30 |   23:50   |   0:20:00
23:30 |   00:00   | -23:30:00
23:30 |   00:10   | -23:20:00

如何规避此问题并正确计算要分别和的C3值?我的时间戳不包括与日期相关的信息、列,包括保持时间。这些持续时间也不会超过最多 3 小时,因此无需担心它会正确检测溢出情况,例如C40:30:000:40:00AB HH:MM:SSDay 1 12:00:00 -> Day 2: 12:00:00 = 24:00:00

标签: google-sheetsgoogle-sheets-formula

解决方案


对于跨越第二天 午夜(重叠午夜)
的混合持续时间,请 尝试以下任一公式。

=ArrayFormula(IF(A42:A="",,MOD(B42:B-A42:A, 1)))

在此处输入图像描述

或者

=ArrayFormula(IF(LEN(A42:A)<>0, 
               IF(B42:B55<A42:A,B42:B-A42:A+1,B42:B-A42:A),""))

在此处输入图像描述

请根据您的需要调整范围


推荐阅读