在Excel中减去秒数

时间:2017-07-14 17:50:25

标签: excel time

我正在尝试从结束时间减去开始时间以获得持续时间,即:

1:02 - 0:10 = 0:52

但我得到的是:

  

0:92

我正在使用0\:00格式。其他建议的格式(例如[mm]:ss)正在将我的数据转换为我不认可的数字,即1:02变为146880:00

我只是想快速进入一堆,从另一个中减去一个col并完成它。

有没有人知道这样做的方法?

1 个答案:

答案 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:200: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秒。

如果A1B1包含输入的值,则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