下面是我的电子表格的摘录。这是一个时间跟踪应用程序,包含开始日期/天、会话 ID 和会话持续时间。A 列通过添加 D 列中的持续时间来填充。我试图计算持续时间的总和,但在总持续时间 > 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
如您所见,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以获得准确的汇总数据?
答案1
Excel 能够以时间戳格式显示时间,但您需要定义一个自定义单元格格式像这样[h]:mm:ss
– 注意括号,它们表示小时数不会在 24 时滚动,而是继续计数。如果您定义它并将其分配给 D 列,您应该能够46:00:00
在 D2 中输入持续时间(当然,如果您不需要它们,您可以跳过格式中的秒数)。
有一个问题:在内部,Excel 仍然存储从其 0 基准日期时间值(1900 年 1 月 1 日,00:00 - 除非您将其设置为使用 1904 年日期时间线索来允许负值,在这种情况下将是 4 年后)向上计数的时间,因此整个时间函数系列(HOUR
,,)仍然会返回 24 小时时间范围内的值(准确地说,除以 24、乘以 24 或在您的情况下乘以 22 的模数)MINUTE
。SECOND
- 如果你想展示此类时间戳的小时、分钟或秒,您必须对其值应用另一种时间格式(即
[h]
小时、m
分钟、s
秒)。请注意,这只会影响显示 - 在内部,该值仍然是如上所述的常规日期时间值; - 你可以自由计算,只要所有操作数都是日期时间类型。如果 A1 中的值被分配了“日期时间”格式
yyyy/dd/mm hh:mm
,则输入=A1+D1
单元格 A2 将为您提供正确的新日期和时间。
答案2
请注意,您可以乘以 24 以获得小数形式的小时数,因此此公式应返回 46
=(A3-A2)*24
将结果单元格格式化为数字
答案3
你可以用Excel来处理大量的时间和分钟,同时避免每次使用冒号 : 符号来分隔小时和分钟。
在一列中输入小时数,在单独的一列中输入分钟数。输入说小时在细胞内A1和分钟在专栏B1
在上述每一列的末尾添加数字,例如A1 至 A19和B1 至 B19作为列中的纯数字A20 和 B20
在单元格中输入公式A20内容是=SUM(A1:A19)以及B20内容是=SUM(B1:B19)
在单元格中输入公式A21内容是=A20+(B20-B21)/60在细胞中B21内容是=MOD(B20,60)
瞧!。单元格 A21 和 B21 的值以小时和分钟为单位给出总数。 强文本
附言:您可以从此页面剪切并粘贴公式!
答案4
也许将日期和时间分成不同的列,这样您就可以使用新B
列在新列中执行计算E
。