2

是否有一个 Excel 自定义格式字符串会以某种dd:hh:mm:ss格式显示秒数,但会隐藏任何前导零值

例如,将 100,000 秒格式化dd:hh:mm:ss为 01:03:46:40 很简单。但是,对于 50,000 秒,我想显示为hh:mm:ss(即 13:53:20)而不是dd:hh:mm:ss(00:13:53:20),对所有值使用单个格式化字符串。

它可以使用 TEXT 公式来实现,例如:

IF(A1<60, 
TEXT(A1/86400, "ss"), 
IF(A1<3600, 
TEXT(A1/86400, "mm\:ss"), 
IF(A1<86400, 
TEXT(A1/86400, "hh\:mm\:ss"), 
TEXT(A1/86400, "d\:hh\:mm\:ss"))))

但是,这会将所有值作为文本返回,不允许对值进行数字排序。

它也可以通过条件格式来实现,但我宁愿只在必要时使用它。

我希望有人能告诉我有关可以完成这项工作的神奇自定义格式字符串!

4

1 回答 1

2

日期存储为天数和一天的小数部分。

所以,无论如何,50,000在 Excel 中意味着50,000 。在将其格式化以显示等效的小时/分钟/秒之前,您必须将其除以86,400将值转换为50,000

完成后,您可以使用自定义数字格式:[<1]hh:mm:ss;dd:hh:mm:ss

但是,您还应该知道ddwill 仅在1-31. 它会回滚到1那个时候。因此,如果您的时间超过31几天,您将无法使用自定义数字格式来完成您想要的。

在此处输入图像描述

于 2022-02-28T21:10:07.883 回答