【问题标题】:Excel: Calculate the difference between two timesExcel:计算两次之间的差异
【发布时间】:2015-01-06 18:56:32
【问题描述】:

是否有 Excel 函数来计算两次之间的差异?如果第一次是昨天或少于第二次,我找不到任何可行的方法。

【问题讨论】:

  • @pnuts 没有成功...
  • 我同意 pnuts,只要 C7 和 D7 是有效时间,那么使用 1 代替 12 应该可以工作 - 确保格式化列 E 以显示时间值 - 然后你的示例中的 E7 将显示9:00

标签: excel date time


【解决方案1】:

Excel for Windows 中的时间表示为从 1900 年 1 月 1 日开始的小数天数。要计算两个时间或日期之间的差异,您只需将两者相减即可。然后,您可以将结果相乘以将天数转换为所需的单位。 (即:*24 获取小时,*1440 获取分钟,*86400 获取秒等)

从技术上讲,旧版本的 Mac 版 Excel 默认使用 1904 年日期系统,该系统使用 1904 年 1 月 1 日作为第一天。即使在 Windows Excel 中使用 Excel 选项对话框的高级选项卡中的设置,也可以启用 1904 日期系统。 (就在 Lotus 1-2-3 兼容性和 DDE 配置旁边。)

【讨论】:

  • 将值格式化为“一般”以查看实际数据类型。它应该变成一个类似于“42010.6082094907”的数字(刚刚拍摄。)
  • @pnuts 如果您在 Excel 中减去两个时间值,您将获得这些值之间的增量,以小数天为单位,而不是日期。除非您关心闰秒等,否则转换为另一个单位的增量就像乘法一样简单。
【解决方案2】:

优雅的做法是:

=MOD(finish-start,1)*24

如果开始时间和结束时间在同一天,则 MOD 函数不会改变任何内容。 如果时间越过午夜并且结束时间比开始时间早,MOD 函数会翻转差异的符号。

请注意,此公式将两次(实际上是两个日期)之间的差异计算为十进制值。您应该将结果显示为时间。

https://exceljet.net/formula/time-difference-in-hours-as-decimal-value

【讨论】:

    【解决方案3】:

    这是一篇很好的文章,它快速解释了 excel 如何处理关于两次之间的差异的时间,以及如果它们落在午夜的任一侧该怎么办。

    Difference between two times

    给出的公式是=MOD((end_time - start_time)+1,1)

    关于如何将时间转换为十进制的后续内容

    How to convert times into hours, minutes or seconds (decimal)

    【讨论】:

      猜你喜欢
      • 2013-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-16
      • 1970-01-01
      • 1970-01-01
      • 2019-03-18
      相关资源
      最近更新 更多