使用MS Excel将MM:SS.ms转换为秒

17

我正在寻找一种简洁的方式将单元格从

分:秒.毫秒 转换为

秒.毫秒

即,

11.111    = 11.111
1:11.111  = 71.111

目前我已经有了一种方法,但它有点hacky,我相信一定有一些不错的Excel功能可以帮我完成这个任务:P

谢谢!

2个回答

19

按照以下方法操作:

将数值0:0:11.1110:1:11.111放置在单元格B3B4中。

现在,格式化它以考虑毫秒... 选择单元格B3B4,右键单击并选择“格式化单元格”。 在“自定义”中,将以下内容放入标有Type的文本框中:

[h]:mm:ss.000 

现在,在单元格C3中放入以下公式:

=B3*86400

用同样的公式填充C4...

将列C格式化为保留3位小数的数字(Number)格式。

完成了! :)

这是我尝试并成功的截图:

enter image description here

编辑:

如果您只想输入MM:SS.ms,则可以使用自定义格式(如:mm:ss.000)格式化整个B列。现在,您可以输入值02:11.111,它会相应地进行转换,并给出131.110。希望能帮到您。


如果数字是完全限定的,例如0:00.11.111,那么这个方法非常有效,但是当数字只输入为11:111时,它会给出错误的答案。 - Jambobond
您输入的格式不符合预期。应该是:11.111 而不是 11:111 - Leniel Maccaferri
你好,Leniel。关于你在结尾处的编辑,如果列的格式为mm:ss.000,那么当你输入02:11.111时,你仍然会看到完全相同的内容。如果要看到131.111,你需要使用自定义格式[s].000 - barry houdini
@barryhoudini 这里不需要这样做,因为列C已经有一个公式来进行转换并显示正确的值。 - Leniel Maccaferri
是的,抱歉,我误解了重点......你可以在任何情况下使用自定义格式来以不同的方式显示当前值,就像公式建议11.111需要输入为0:11.111一样。 - barry houdini

3

如果你的时间在单元格A1中,将此公式放置在B1中。

=IF(LEN(A1)>5,VALUE(TEXT(A1,"[ss].00")),A1)

如果时间少于1分钟,则输出原始时间;如果大于1分钟,则将其转换为秒和毫秒(保留2位小数)。

只有当您在单元格 A1 中输入的时间大于或等于10秒时,此函数才会生效。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接