我正在尝试从结束时间减去开始时间以获得持续时间,即:
1:02 - 0:10 = 0:52
但我得到的是:
0:92
我正在使用0\:00
格式。其他建议的格式(例如[mm]:ss
)正在将我的数据转换为我不认可的数字,即1:02
变为146880:00
我只是想快速进入一堆,从另一个中减去一个col并完成它。
有没有人知道这样做的方法?
答案 0 :(得分:1)
解决方案遵循问题中显示的结果的解释。
格式0\:00
实际上是格式000
,在第一个和第二个数字之间插入冒号字符。
如果某个单元格包含值102
且格式为0:\00
,则它将在工作表中显示为1:02
,但在幕后其值仍为102
。所以
1:02 - 0:10 = 102 - 10 = 92 = 0:92 in 0\:00 format
要了解[mm]:ss
格式的结果,您需要了解在Excel中如何表示日期(和时间)值。有一个合理的解释on this webpage from Chip Pearson
首先,日期/时间值102
相当于0:00 on 11 April, 1900
,因为距离Excel的日期/时间零点是102天。其次,格式[mm]:ss
以分钟和秒表示此经过时间。所以
102 days = 102*24*60 minutes = 146880 minutes
在146880:00
[mm]:ss format
有两种方法可以解决您的问题。
第一种方法涉及以不同方式输入数据。可以将时间直接输入工作表中,时间为小时:分钟:秒。因此,可以输入1分2秒作为0:1:2
(或00:01:02
或任何变体,例如0:01:2
或00:1:02
)。这可能不如仅仅输入102
那么方便。默认情况下,以这种方式输入的数字将以hh:mm:ss
格式显示,但您可以通过将格式更改为mm:ss
或[mm]:ss
来禁止显示小时数。如果您的任何时间值为60分钟或更长时间,则应使用后者,前者将禁止显示小时数 - 例如,输入0:61:2
(61分钟和2秒)显示为01:02
与前者相同但后者为61:02
。
请注意,如果您只是输入1:2
而非0:1:2
Excel将其解释为1小时,2分钟和0秒,并使用格式02:00
显示为mm:ss
或使用62:00
作为[mm]:ss
。
第二种方式允许您使用0\:00
格式输入数据,但需要使用公式将输入的值转换为秒 - 例如,输入的值102
用于表示1分2秒,正确显示为1:02
,但在幕后转换为62
秒。
如果A1
和B1
包含输入的值,则A1 less B1
的公式为
=(INT(A1/100)*60+A1 - 100*INT(A1/100))-(INT(B1/100)*60+B1 - 100*INT(B1/100))
此公式计算其结果为秒数。
如果此结果放在单元格C1
中,则公式
=100*INT(C1/60)+(C1-60*INT(C1/60))
将C1
转换为适合以0:\00
格式
或者,以秒为单位的结果可以通过除以24*60*60 = 86400
转换为天数,并使用时间格式显示,例如[mm]:ss