如何在Excel中将d / m / yyyy h:mm:ss转换为yyyyMMdd
我想在Excel中将d / m / yyyy或dd / m / yyyy或d / mm / yyyy转换为yyyyMMdd格式。 原始值看起来像3/3/2014上午8:00:00 。
如果所有的date都是相同的长度,我可以做左,中,以此类推反转date和截断时间。 但是,如果我有三种不同长度的date,我怎么能做到这一点?
这适用于固定长度: =DATE(MID(A1;7;4); LEFT(A1;2); MID(A1;4;2))
用A1中的数据,在B1中input:
= TEXT(DATEVALUE(MID(A1,1,FIND(“”,A1)-1)),“yyyymmdd”)
注意:
input中的月份和date必须按DATEVALUE()函数的正确顺序排列。
对于如下数据:
25/12/2014上午8:00:00
我会使用下面的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
在这种情况下,单元格B1必须格式化“ 自定义” > “yyyymmdd”