excel - 在 Excel 中将时间格式化为天、小时、分钟和秒的更好方法?

标签 excel time number-formatting

在 Excel 中,我通常通过将小时、分钟和秒放入单独的单元格来跟踪所花费的时间。我发现 Excel 内置的日期和时间格式在加法和减法方面有很多怪癖,这就是我避免使用它的原因。

现在我有一个 Excel 工作表,记录重复任务的时间,如下所示:

|  H  |    I    |

| Min | Seconds |  
|  7  |   15    |
|  7  |   51    |
|  8  |   05    |

在单元格 E5 中,我将任务的总时间以秒为单位,然后将其转换为天

=(SUM(H:H)*60+SUM(I:I))/60/60/24

现在我希望 E5 的总计以小时分钟和< em>秒。我可以将 E5 格式设置为 d"days "h"hours "mm"min "s"s",但如果总时间超过 30 天,则此方法不起作用。

所以我现在在另一个单元格中拥有的是这个公式:

=TRUNC(E5)&" days "
&TRUNC((E5-TRUNC(E5))*24)&" hours "
&TRUNC(((E5-TRUNC(E5))*24-TRUNC((E5-TRUNC(E5))*24))*60)& " min"
&TRUNC(((((E5-TRUNC(K5))*24-TRUNC((E5-TRUNC(E5))*24))*60)-
TRUNC((((E5-TRUNC(E5))*24-TRUNC((E5-TRUNC(E5))*24))*60)))*60)&" s"

(注意:论坛全部在 Excel 中的一行中,我在此处对其进行了格式化,以便更易于阅读。)

我的公式在我使用的任何时间内都有效且准确,但它很长且难以遵循。有没有更好的方法来做到这一点?

(请记住,我正在处理格式化为数字的单元格。没有格式化为日期,也没有格式化为时间。)

最佳答案

如下图所示,我无法让您提供的公式(在 E6 中)发挥任何确定性,但我设计了一个公式,将一些工作表函数与自定义格式掩码相结合,似乎效果很好。

       TRUNC days from datetime

E7中的公式为,

 =INT(E5)&TEXT(MOD(E5, 1), " \d\a\y\s h \h\r\s m \mi\n\s s \s\ec\s")

您不能在同一格式字符串中同时使用 0 和 h,但可以删除 h、m 和 s 的日期部分和格式。格式掩码中的反斜杠是转义字符,不需要在带引号的字符串中加倍引号。 INT function解决了整数部分和 MOD function提供小数(又名时间)部分。

¹ 我更喜欢 INT function超过TRUNC function用于删除数字的小数部分。这完全是个人喜好。在这种情况下没有区别。偶ROUND可以使用。

关于excel - 在 Excel 中将时间格式化为天、小时、分钟和秒的更好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31776756/

相关文章:

c - 函数运行的顺序与我输入的顺序不同

excel - 使用宏复制每 N 行

Android小部件输入持续时间

android - DatePicker 的 setMinDate(...) 在第二次调用时不起作用

kendo-ui - Kendo UI 数字格式无效模板

java - 倒计时器,在 JLabel 中显示秒数时出错

excel - 在Excel VBA中重命名文件

excel - 从 Excel 中的列中计算唯一组合

ios - 计算日期数组之间的平均时间

python - 如何在 python 中以长的、漂亮的圆角和本地化格式打印任何 float ,例如 1.234e22?