在Excel中将string转换为date

我有这种格式的datestring:“2012年1月3日星期二”

如何在Excel 2010中以date格式转换它们?

先谢谢你!

什么有效可以取决于区域设置。 如果你有美国的区域设置,这个公式会根据A1中的数据给出一个date

=TRIM(REPLACE(A1,1,FIND(",",A1),""))+0

格式为要求的date格式

这个版本应该在更广泛的范围内工作…..

=TRIM(MID(A1,LEN(A1)-7,2)&REPLACE(REPLACE(A1,LEN(A1)-7,3,""),1,FIND(",",A1),""))+0

尝试这个版本应该适用于意大利设置 – [我假设数据是英文显示,例如月份是一月,二月等]

=DATE(RIGHT(A1;4);SEARCH(MID(A1;FIND(",";A1)+2;3);"xxjanfebmaraprmayjunjulaugsepoctnovdec")/3;MID(A1;LEN(A1)-7;2))

DATEVALUE工作表函数将文本转换为date,但它似乎不接受“2012年1月3日星期二”。 但它确实接受例如“2012年1月3日”,所以如果你操纵string的格式,你应该能够得到它的工作。

只是一个想法,像DATEVALUE这些数据函数通常取决于您的显示设置的date,所以如果你在世界其他地方,不同的显示设置,英国伦敦可能会有所不同。