EXCEL - 汇总小时数,以自定义格式显示,然后进行数学运算

EXCEL - 汇总小时数,以自定义格式显示,然后进行数学运算

我正在使用 Excel Online 来跟踪我的工作时间。

第一列包含我到达的时间,第二列包含我离开的时间,第三列对这两个时间进行简单的减法。这正如预期的那样,减法正确地计算出了小时和分钟的差值。我对这个月的每一天都这样做,并在表格底部将小时数相加。

如果我只是使用汇总单元格的默认格式化程序,它将显示一个“随机”浮点值,如 1.20833。我应用了自定义格式化程序[h]:mm:ss,它似乎正确地显示了我在单元格中工作的总小时数。

当我尝试在格式化的汇总单元格上进行计算时,出现了问题。我想计算当月我加班的小时数。理论上应该像这样简单:

overtime = number_of_hours_worked - (days_at_work * 7.5)

但我无法在 Excel 中表达这一点。我的问题是:如何以自定义格式从单元格中提取小时数(最好还有分钟数)?

参见下面的参考图片。它正确地总结出我工作了 29 个小时。在三天的时间里,我应该总共工作 (7.5 * 3 =) 22.5 个小时。最后一个单元格应该显示 6.5。此单元格中的公式是=HOUR(N22)-(3*7.5)N22 是汇总单元格。

在此处输入图片描述

答案1

问题不在于格式,而在于公式。

用这个:

=(N22*24)-(3*7.5)

使用 HOUR() 时,您将错过任何分钟。此外,HOUR 仅返回小时部分,由于技术上它只有一天和 5 小时,因此它只会返回 5 而不是 29。

通过将时间乘以 24,您可以将时间转换为小数,其中小时为整数,分钟和秒为小数。任何天都将变成 24 小时。

在此处输入图片描述

答案2

您当前的公式是,如果时间 = 29:00,则取当天的小时数并减去 3*7.5。29:00 时实际上是凌晨 5:00。

您已经有小时数,因此您只需减去正常时间部分。

=N22-(3*7.5)

应该可以解决问题。

相关内容