如何在Excel中将d / m / yyyy h:mm:ss转换为yyyyMMdd

时间:2015-01-28 13:44:15

标签: excel

我想将 d / m / yyyy dd / m / yyyy d / mm / yyyy 转换为 yyyyMMdd 格式在Excel中。原始值看起来像 3/3/2014 8:00:00 am

如果所有日期都是相同的长度我可以做左,中等,以反转日期并截断时间。但是,当我有三种不同长度的日期时,我怎么能这样做呢?

这适用于固定长度:=DATE(MID(A1;7;4); LEFT(A1;2); MID(A1;4;2))

1 个答案:

答案 0 :(得分:1)

B1 中的 A1 中的数据输入:

= TEXT(DATEVALUE(MID(A1,1,FIND("",A1)-1))," yyyymmdd")

enter image description here

注意:

输入中的月份和日期必须与 DATEVALUE()函数的顺序正确。

对于以下数据:

25/12/2014 8:00:00 am

我会使用以下 UDF

Public Function INeedADate(s As String) As Date
    ary = Split(Trim(s), " ")
    bry = Split(Trim(ary(0)), "/")
    INeedADate = DateSerial(bry(2), bry(1), bry(0))
End Function


enter image description here

在这种情况下,单元格 B1 必须格式化为自定义 > " yyyymmdd"