2012-02-01 51 views
0

我有一个问题值得上千行..我具有假设表示轨迹时间柱:的MS Excel - 随机格式化细胞转化为HH:MM:SS时间格式

13:43 
00:00:59 
14:14 
14:28 
14:49 
15:13 
15:34 
15:38 
16:08 
16:18 
16:48 
17:24 
18:37 
18:39 
18:59 
19:24 
0:24:17 
00:01:15 
00:01:22 
00:01:26 
00:01:42 
0:34:37 
1.45 
1.47 
1.47 
1.47 
1.48 
1.48 

即当寻找用户OK - 13:43实际上13小时是43分钟00秒 虽然有格式正确的时间00:00:59有的只是小数! 他们都假设是mm:ss格式,但现在我将这个电子表格转移到数据库中 - 我显然会得到不正确的时间格式...

任何简单/不那么简单的方法来标准化它们全部?

+0

小数值代表什么? 1.45会是1.45分钟,1分45秒还是别的? – msmucker0527 2012-02-01 17:48:35

+0

这将是1分45秒 – Elen 2012-02-01 21:17:31

回答

2

试试这个:

=IF(LEFT(CELL("format",A1),1)="D",TEXT(A1,"hh:mm:ss"),IF(ISERR(TIMEVALUE(A1)),TEXT(TIMEVALUE(SUBSTITUTE(A1,".",":")),"hh:mm:ss"),TEXT(TIMEVALUE(A1),"hh:mm:ss"))) 

更新: 按照最新的留言。更新的公式将hh:mm视为mm:ss。所以这至少将工作,除了13:43一个,这是真正的......:mm

=IF(CELL("format",A1)="D9",TEXT(TIMEVALUE("00:"&TEXT(A1,"hh:mm")),"hh:mm:ss"),IF(LEFT(CELL("format",A1),1)="D",TEXT(A1,"hh:mm:ss"),IF(ISERR(TIMEVALUE(A1)),TEXT(TIMEVALUE("00:"&SUBSTITUTE(A1,".",":")),"hh:mm:ss"),TEXT(TIMEVALUE(A1),"hh:mm:ss")))) 
+0

我会在明天尝试这个工作。谢谢。但哪一部分转换为18:37(excel认为18小时37分钟)为00:18:37? – Elen 2012-02-01 21:20:51

+0

哦!我认为这也是18小时。我有点惊讶你的用户录制的精确度为37秒!你说你的第一张唱片13:43是13小时43分钟,考虑到这与18:37之间没有任何区别,你可以做的不多。 – Skytunnel 2012-02-01 21:54:06

+0

看到新的公式添加到我上面的答案。这将把所有HH:MM,好像他们是MM:SS – Skytunnel 2012-02-01 22:05:36