如何在 Excel 中计算 > 24 小时数?

dww*_*n66 7 date-time worksheet-function microsoft-excel

下面是我的电子表格的摘录。这是一个时间跟踪应用程序,包含开始日期/日期、会话 ID 和会话持续时间。通过在 D 列中添加持续时间来填充 A 列。我正在尝试对持续时间进行总计,但在总持续时间 > 24 小时的情况下,不断得到不正确的值。

考虑

     A                   B        C                D         
1  2012/05/22 01:00  |  Wed  |  Session 23341  |  9:00
2  2012/05/23 10:00  |  Wed  |  Session 23342  | 22:00
3  2012/05/25 08:00  |  Fri  |                 |  0:00
Run Code Online (Sandbox Code Playgroud)

如您所见,A2 和 A3 之间的日期差异表明 D2 中的 22:00 值表示持续时间为 46 小时(05/23 10:00 + 46:00 = 05/25 08:00)。但是,D 列仅显示超过一天 24 小时的 22:00。

我尝试阅读 D2 包括int(d2) = 0.00 / int(d2)*24 = 0.00 / hour(d2) = 22.00 / int(a3-a2)*24 =0.00等,但未能成功提取“46”值。

我怎样才能准确地表示 D2 以实现准确的汇总数据?

kop*_*hke 9

Excel是能够在时间戳格式来显示时间,但你需要定义一个自定义单元格的格式为这样的[h]:mm:ss-注意括号,这是表示该时间不会在24翻滚,但保持计数。如果您定义它并将其分配给 D 列,您应该能够输入46:00:00D2 中的持续时间(当然,如果您不需要它们,您可以跳过格式中的秒数)。

有一个问题:在内部,Excel 仍然存储从其 0 基准日期时间值(1900 年 1 月 1 日,00:00)向上计数的时间 - 除非您将其设置为使用 1904 日期时间线索以允许负值,在这种情况下将是 4 年后),因此整个时间系列函数 ( HOUR, MINUTE, SECOND) 仍将返回 24 小时时间范围内的值(准确地说,是除以 24、乘以 24 或 22 的模数) .

  • 如果要显示此类时间戳的小时、分钟或秒,则必须对其值应用另一种时间格式(即[h]小时、m分钟、s秒)。请注意,这仅影响显示 - 在内部,该值仍然是如上所述的常规日期时间值;
  • 只要所有操作数都是日期时间类型,您就可以自由计算。如果您在 A1 中的值被指定为“日期时间”格式yyyy/dd/mm hh:mm,则输入=A1+D1单元格 A2 将为您提供正确的新日期和时间。