如何在Excel中为日期和时间使用自定义数字格式的条件运算符?
如果我有一列数字,我可以使用自定义的数字格式来显示一个单数或复数字。
右击单元格>格式化单元格.>数字>类别:自定义>类型:
[=1]# "item";# "items"
好的
对于包含1的单元格,自定义数字格式显示"1项“。
对于包含7的单元格,自定义数字格式显示"7项“。
同样,我也想用时间来做同样的事情。
如果我有一列时间,如00:01:00、00:20:00、00:25:00等,我想显示"1分钟“、"20分钟”、"25分钟“等。
我第一次尝试[=1][m] "minute";[m] "minutes"
,但事实证明1意味着24小时或1天。
1分钟的值是
1 / 24 / 60 = 1 / 1440 = 0.0006944444444444444444444444...
我试着输入一个分数,但[=1/1440]
in [=1/1440][m] "minute";[m] "minutes"
变成了[=1]
。
不幸的是,我尝试了[=0.000694444444444444][m] "minute";[m] "minutes"
,但这不起作用。
下面的方法可以工作,但是我想使用一个精确的分钟值。
[<=0.000694444444444445][m] "minute";[m] "minutes"
有一种1分钟有效的格式吗?
以下是关于自定义数字格式的文档:
发布于 2013-08-10 12:39:29
有趣的问题。乍一看,尝试这种分数格式:
[=0 1/1440][m] "minute";[m] "minutes"
似乎很管用。但是,在输入它之后,您将看到这将显示与post中相同的小数点。对于当前会话来说,这是可以的,但是保存文件和重新打开文件会再次恢复到原来的问题。
问题是数字格式的值四舍五入到15位精度,而精确指定内部浮点数则需要17位数字。看到这一点的一种方法是从即时窗口尝试这个17位的精确测试:
?[0 1/1440]=0.00069444444444444444
这将返回True
,但删除最后两个4s,因此只有15位的精度返回False
。
鉴于这些观察,我认为唯一可靠的方法是输入15位间隔,其中包含相当于一分钟的十进制值。这可以使用以下数字格式完成:
[>0.000694444444444445][m] "minutes";[>0.000694444444444444][m] "minute";[m] "minutes"
(如果包括秒,则第一个值可以替换为2分钟值,即0.00138888888888888)。
另一种方法是使用条件格式,这可能会更简单。首先,将默认的数字格式[m] "minutes"
应用于单元格。然后从带中选择条件格式>新规则>使用公式.选项:公式.:=MINUTE(A1)=1
NumberFormat:[m] "minute"
https://stackoverflow.com/questions/18158820
复制相似问题