我正在做一份工作表。有时我会工作到很晚,有时工作时间很长(超过 24 小时)。
我正在寻找 Excel 中的自动化解决方案,以便我可以轻松计算出以下场景的总工作小时数。
注意:我已将结果单元格格式化为:[h]:mm 格式。
开始工作:23:05
停止工作:01:35
总工作时数:02:00
答案1
认为
- 您正在处理一些时间表,每个工作时间不超过 24 小时。
- A1 存储开始工作时间(没有日期部分,例如
23:05
)。 - B1 存储停止工作时间(没有日期部分,例如
01:35
)。
回答
将公式输入到C1中,然后将其格式化为[h]:mm
。
= B1 - A1 + IF(B1 < A1, 1, 0)
您将获得 C1 中的工作时间长度,例如2:30
(2 小时 30 分钟)。
解释
通常,B1 - A1
是开始和停止工作之间的持续时间。
但是,如果B1 < A1
,则意味着工人工作到了午夜,我们需要1
在结果中添加(天)。
答案2
答案3
因为我之前的解决方案没有计算出正确的结果。事实上没有包括 55 分钟,所以我发布了这个。
现在使用的数据是单元格A2 是 20/11/2017 23:05&在单元格 B2 中为 21/11/2017 01:35,下面的公式将计算出正确的时间差。
D2 = (B2-A2)。
还有技巧是将结果单元格格式化为 [hh]:mm。
答案将是 2:30 小时,也会计算日期差异。
答案4
为了获得更好的结果,我建议您执行以下操作,
将两个单元格的格式都设为 DD/MM/YY HH:MM:SS。
将公式单元格格式设置为 HH:MM:SS。
假设单元格 A2开始日期和时间为 2017 年 11 月 20 日 23:05,B2结束日期和时间为 2017 年 11 月 21 日 01:35。
写D2 中的公式,
=时间(小时(B2),分钟(B2),秒(B2)-时间(小时(A2),分钟(A2),秒(A2)))
我得到的答案是 01:34:59。
注意:为了与您建议的时间相结合,我添加了最近的日期,因为,如果差异超过 1 天,Excel 将无法计算实际时间差异。
我的公式比其他的计算更准确。
就像使用公式一样= INT((B2-A2)*24)答案是2,[当单元格格式为常规时,如果将其转换为 HH:MM,则得到 00:00]
希望这对你有帮助,我测试过后发布了解决方案。