在 excel 2003 中计算时间差异

在 excel 2003 中计算时间差异

我的目标是每月 2 小时 47 分钟。如果我参加,假设是 1 小时 20 分钟,我的 Excel 单元格格式为:

[红色]-[m]:ss;[蓝色][m]:ss

...然后它用红色显示我在达到目标之前有 87 分钟的时间差。当它是负数时,它会给出正确的答案。但如果我正常情况下达到 3 小时 00 分,它应该给我 13 分钟的蓝色,但它没有。它给了我 ################### 作为答案。这不是加宽单元格的问题。

有人能帮我找到正确的公式吗?

答案1

答案2

假设你想记录你的慢跑时间,并为自己设定每月慢跑 2 小时 47 小时的目标(你是一个严谨的人)。

您需要一些细胞……

  • 单元格 A1(我们称之为目标)。

输入2:47,即您的目标慢跑时间。单元格将采用 h:mm 的自定义格式,即小时:分钟,但实际上 Excel 会将任何“时间”存储为日期和时间值。在本例中,为 1900 年 1 月 1 日,凌晨 2:47,但我们并不关心这一点。虽然输入数据时很方便,但我们在编写公式时需要考虑到这一点。

  • 单元格 A2(我们称之为“已实现”)

输入以下公式:=SUM(C1:C50)。这是您在 C 列中输入的一个月内所有慢跑时间的总和。添加正日期时间没有问题,因为它们永远不会低于零。

  • 单元格 A3(我们称之为 MonthDifference)

问题就在这里。“根据单个时间单位显示结果”一文下的 Excel 帮助建议:

=INT((B2-A2)*24) Total hours between two times (4)

=(B2-A2)*1440 Total minutes between two times (295)

=(B2-A2)*86400 Total seconds between two times (17700)

我选择了分钟,因为计时慢跑秒可能有点多。在 A3 中,只需输入=(A2-A1)*1440。然后将 A3 单元格自定义格式设置为:[Red]-0;[Blue]0

瞧!现在你只需要跑到外面,然后回来在单元格 C1 到 C50 中写下你的时间。祝你好运。

答案3

问题是您试图显示包含负值且格式为时间的 Excel 单元格。

如果将单元格的格式更改为十进制数,您将看到正确显示的时间,但是为一天的负分数。

87 分钟是一天的 0.0604

13 分钟是一天的 0.0090 - 当单元格格式化为时间时,这个负值会给您带来问题。

要显示分钟,请将此分数乘以 1440(一天的分钟数)。完成此操作后,您将看到该数字正确显示正负分钟。

完成后,您会发现很容易显示红色和蓝色分钟以表示负值和正值;正确的单元格格式是:

[Blue]#,##0.00_);[Red](#,##0.00)

答案4

您可以根据 Microsoft 的这篇文章来验证您所做的事情:
计算两个时间之间的差值

如果这没有给出任何答案,了解您使用的公式将会有所帮助。

相关内容