2013-05-13 84 views

回答

2

什么作品可以取决于区域设置。如果你有美国的区域设置这个公式将基于A1的数据所需的日期格式

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

格式提供一个日期

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

=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))

+0

由于我使用的是意大利语版本,因此我使用了您发布的第二个版本,但我得到#VALUE作为结果。具体来说就是FIND函数返回#VALUE – 2013-05-13 12:31:23

+0

修正了它! FIND函数的问题在于我错误地用分号替换了逗号。 #VALUE问题是由“+0”造成的。那是什么目的?谢谢你的答案btw – 2013-05-13 12:46:48

+0

这个想法是,日期被转换为像'2013年1月3日[一个有效的日期格式]的文本字符串,然后+0将其转换为实际日期 - 如果这不起作用它是可能是因为1月份需要成为意大利人的对手 - gennaio? - 让我添加一个适合你的公式...... – 2013-05-13 12:55:52

0

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

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

+0

感谢Barry我可以在“2012年1月3日”格式的日期,但因为我使用Excel的意大利版本,它不会把它作为DATEVALUE函数的一个好日期= \是否有翻译它或让它读取外部日期的方法? – 2013-05-13 13:02:01