自定义时间格式excel:如果小时或分钟为零,则不显示零

Dai*_*iva 7 format excel time

之前提过一个问题,得到了答案:谢谢。

“现在我已将单元格格式设置为:h“小时”m“分钟”因此,如果我的单元格有 7:00,则它显示为 7 小时 0 分钟。如果小时或分钟为零,有没有办法删除这些小时或分钟? 大约 7 小时,或者 0:30 相当于 30 分钟”

答案是:

如果您有 Excel 2007 或更高版本(但显然没有 Excel for Mac 2011),您可以通过常规格式和条件格式的组合来实现此目的。假设 A1 down 中的数据使用常规自定义格式,如下所示 [<0.0415][m]" 分钟";h "小时" m "分钟" 这将为您提供与之前的格式相同的格式,但任何值 < 01:00 都会显示为 30 分钟 现在您可以添加条件格式条件。选择 A 列后执行此操作 条件格式 > 新规则 > 使用公式确定要设置格式的单元格 > 在框中键入此公式 =MINUTE(A1)=0 单击“格式”按钮并设置以下数字格式 h" 小时" 现在,如果 A1 中的 16:00 将显示为 16 小时 [条件格式规则将始终取代常规格式]

但我想知道除了这种添加时间格式之外,是否有可能以一种方式,比如如果我有 1 小时,它会显示“1 小时”(单数)而不是“1 小时”?

Cam*_*Cam 8

这应该可以做到这一点

将其添加到自定义类型框中

[<0.0415][m] "minutes";[<0.083][h] "hour" m "minutes";[h] "hours" m "minutes"

Run Code Online (Sandbox Code Playgroud)

输入/输出

inputs -
00:05:00
00:30:00
01:05:00
01:30:00
02:30:00

outputs -
5 minutes
30 minutes
1 hour 5 minutes
1 hour 30 minutes
2 hours 30 minutes
Run Code Online (Sandbox Code Playgroud)

笔记

通过将方括号放在 [h] 两侧,将允许添加超过 24 小时,例如 31 小时 30 分钟。

在 Excel 中,1 分钟等于 0.00069444(一天的 1/1440)。知道这一点有助于计算两个小于的数。

替代方案

如果你只想要 h 而不是小时,m 而不是分钟,试试这个

[<0.0415][mm] "m";[h] "h" mm "m"
Run Code Online (Sandbox Code Playgroud)


p._*_*ot_ 0

=IF(HOUR(B9)<>0,HOUR(B9)&" hour"&IF(HOUR(B9)<>1,"s "," "),"")&IF(MINUTE(B9)<>0,MINUTE(B9)&" minute"&IF(MINUTE(B9)<>1,"s",""),"")
Run Code Online (Sandbox Code Playgroud)

TLDR:手动提取每个值>然后输入 0,1 和其他的 if 条件>打印值..

希望能帮助到你。