将yyymmddhhmmss转换为可用的日期时间?

时间:2016-01-11 19:21:16

标签: excel datetime excel-formula

我有一个电子表格,其中包含一个带有时间戳的列。这是一个例子:

20160111075400140935
20160111075400140934
20160111075400140933
20160111075400140932

我想将这些转换为可用的Excel格式,日期为

基于另一个SO问题,我使用=DATE(LEFT(B2,4),MID(B2,5,2),MID(B2,7,2))来获取日期。我也可以使用=TIME(MID(B2,9,2),MID(B2,11,2),MID(B2,13,2))来获取时间。问题是我似乎无法将它们放在同一列中。我尝试了几件事:

=DATE(LEFT(B2,4),MID(B2,5,2),MID(B2,7,2))&TIME(MID(B2,9,2),MID(B2,11,2),MID(B2,13,2))

423800.329166666666667的结果,无论我如何格式化单元格。

=DATE(LEFT(B2,4),MID(B2,5,2),MID(B2,7,2))&TIME(MID(B2,9,2),MID(B2,11,2),MID(B2,13,2))

42380 0.329166666666667的结果,无论我如何格式化单元格。

我还尝试将每个值放在它自己的列中,并以各种方式组合单元格并得到与上面相同的结果。

我尝试使用的格式为m/d/yyyy h:mm:ss

1 个答案:

答案 0 :(得分:3)

使用&时,它会将两者连接成文本字符串。要获得可以正确格式化的数字,请使用+代替。这会将两个数字加在一起。

=DATE(LEFT(B2,4),MID(B2,5,2),MID(B2,7,2))+TIME(MID(B2,9,2),MID(B2,11,2),MID(B2,‌​13,2))

使用您的号码将返回号码:42380.329166666666667

将其格式化为所需格式。