2017-07-17 40 views
1

我有一系列时间格式为hh:mm.ss的数据(我的原始数据集通过csv以这种方式导入)。我需要将它转换为正确的格式(hh:mm:ss)来进行计算,并且使用替换功能很容易完成。带可选小时数的Excel自定义时间格式

问题是这些数据中的一部分没有hh部分,它们只是mm.ss,所以当我替换“。”时。与“:”成为hh:mm而不是mm:ss,例如06:30s变成06h:30m。

有谁知道如何制作一个自定义时间格式,默认值为mm,只有在必要时才包含hh?

+0

您的问题是不明确的。你写的格式是'hh:mm.ss'或'mm.ss',对我来说,这意味着'00:06.30'或'06.30'。但是,你举了一个'06m.30s'的例子。这是什么?实际上,如果你提供一个原始'csv'文件的例子(如记事本中所示),这将是最好的。以及您正在使用的是哪个版本的Excel。 –

+0

我把“m”和“s”帮助人们理解这个例子,它们不包含在格式中。正如你所说,它是hh:mm.ss或mm.ss。我使用2016版本。不幸的是,我无法提供csv文件,因为它包含敏感信息 –

+0

据我所知,没有自定义格式可以做你想做的。您可能需要在导入过程中进行转换。将列指定为文本,然后测试存在多少个冒号':'可能允许您适当地转换值。没有一个例子来证明你的问题,我会猜测解决方案。当然,你可以创造一些东西。 –

回答

1

这假定在导入过程,如TEXT

EDIT时间列输入:式缩短。

值转换为一个REAL Excel时

=TIMEVALUE(SUBSTITUTE(IF(ISERR(FIND(":",A2)),"00:"&A2,A2),".",":")) 

=--(SUBSTITUTE(IF(ISERR(FIND(":",A2)),"00:"&A2,A2),".",":")) 

应用所需的时间格式结果

hh:mm:ss 

enter image description here