减去时间而不考虑日期

减去时间而不考虑日期

我负责在 Excel 中编写自定义报告。我试图将计算单元格公式化,因为报告的大部分内容都是文本。请考虑以下内容:

Date    StartTime   Length    EndTime
1/1/24  13:00:00    2H        15:00:00
        15:00:00    2H 30M    17:30:00

我已经正确设置了 StartTime 和 EndTime 以及数据验证(值介于 00:00 到 23:59:59 之间的列表)。在上面的代码片段中,13:00 和 15:00 被正确转换为下午 1 点和下午 3 点。我将这两列格式化为时间(我相信时间列存储的是纪元日期,因为我只指定了时间),并将日期列格式化为日期:2024 年 1 月 1 日,星期一。我想“修复”的是长度。现在,我正在用我可靠的手指输入长度列。我想使用结束时间 - 开始时间 = 长度但我不需要任何日期。我只想要小时数的差异,而且我知道时间以十进制形式显示为 24 小时的分数。当我意识到时间以分数形式输出时,我放弃了,因为我希望长度计算不显示为 24 小时的分数。此报告用于管理。我需要以易于阅读的形式显示输出。

答案1

如果 Excel 将它们识别为时间,则可以将“长度”列设置为=[@EndTime]-[@StartTime]

然后将数字格式设置为自定义,并输入:h表示小时数(最多 23),或h:mm12:34 格式。d如果需要更多时间,您可以添加天数:

在此处输入图片描述

答案2

可能是我错了,或者没有正确理解原帖或给出的要求,我甚至尝试评论两次,但由于没有回复而删除了。我将其作为答案发布,以说明我试图解释的关于原帖的理解。

正如 OP 在最后几行所说:

此报告供管理层使用。我需要以 一些容易阅读的内容。


在此处输入图片描述


• 单元格中使用的公式C2

=LET(
     α, TEXT(MOD(D2-B2,1),"h m"),
     φ, TEXTBEFORE(α," "),
     δ, TEXTAFTER(α," "),
     IF(--φ=0,"",φ&"H ")&IF(--δ=0,"",δ&"M"))

或者,如果你想要SPILL输出,

在此处输入图片描述


• 单元格中使用的公式C2

=LET(
     α, TEXT(MOD(D2:D5-B2:B5,1),"h m"),
     φ, TEXTBEFORE(α," "),
     δ, TEXTAFTER(α," "),
     IF(--φ=0,"",φ&"H ")&IF(--δ=0,"",δ&"M"))

只是一个建议,虽然上述公式显示了预期的输出,但强烈建议用于未来计算的数据不要转换为Text格式化,因为数字时间值或日期对于计算和操作更有用。

还请注意,上述解决方案假定最终用户将使用Modern Excel Versionsie MS365


相关内容