美国date(文本)到欧洲date(date)的Excel转换

我正在将美国网页上的数据粘贴到Excel表格中。 欧洲Excel不能理解美国date….所以我把它粘贴为文本。

美国和欧洲的date差别在于date和月份的顺序不同。 我如何从“美国文本date”到“欧洲”Excel能够理解的实际date? 将它作为date读取不起作用,所以YEAR(),MONTH(),DAY()将不能在本地文本string上工作。 一些string转换必须先完成。

第三栏只是为了展示这个问题。 这是MONTH函数在列“A”中调用文本的结果。 到了9月13日,这个月的一天正在进行,因此会出现一个错误。

TEXT (from US web) EU date (real date) MONTH(A1) 9/8/10 10:03 PM 8. Sep 2010 8 9/9/10 10:03 PM 9. Sep 2010 9 9/10/10 10:03 PM 10. Sep 2010 10 9/11/10 10:03 PM 11. Sep 2010 11 9/12/10 9:40 PM 12. Sep 2010 12 9/13/10 9:40 PM 13. Sep 2010 ERROR 9/14/10 9:40 PM 14. Sep 2010 ERROR 9/15/10 9:28 PM 15. Sep 2010 ERROR 

如果没有“转换函数”,那么解决scheme可能是将m / d / yy分成三列,并从中创build一个date。 如果是这样,我需要一些帮助把文本分成一天,一个月和一年。

更新回答….拉撒路想出了一个工作。 首先,将A列中的文本分为年,月和日。 然后结合他们,例如。 使用DATEfunction

  • 年: MID(A2,FIND("/",A2,FIND("/",A2,1)+1)+1,FIND(" ",A2,1)-FIND("/",A2,FIND("/",A2,1)+1)-1)
  • 月: MID(A2,1,FIND("/",A2,1)-1)
  • 日: MID(A2,FIND("/",A2,1)+1,FIND("/",A2,FIND("/",A2,1)+1)-FIND("/",A2,1)-1)

假设你的第一个date是在单元格A2中,那么以下将从美国转换为欧洲结构。

 =DATE("2000"+MID(A2,FIND("/",A2,FIND("/",A2,1)+1)+1, FIND(" ",A2,1)-FIND("/",A2,FIND("/",A2,1)+1)-1), MID(A2,1,FIND("/",A2,1)-1),MID(A2,FIND("/",A2,1)+1, FIND("/",A2,FIND("/",A2,1)+1)-FIND("/",A2,1)-1)) 

您可以尝试使用Excel的DATEVALUE()函数将文本string转换为实际的Exceldate值

 =DATEVALUE(MID(A1,4,2)&"/"&LEFT(A1,2)&"/"&RIGHT(A1,2)) 

然后你可以编号格式掩盖这个你需要的

您需要使用文本到列来将最初的美国价值分成三个组成部分。 那么你就不要把日,月,年从工作中解脱出来。 通过这三个组件,使用Concatenate进行重新组装,并使用Rept()命令将前导零添加到需要的位置。

PKL100