从不同的数据中返回date,其中date格式为文本,date的数字从1到2不等

Data -----------------| ----- Formula ---|------------------- Date (Output) ------------------------------ (name - Aug 7, 2015) --------------------------------------------------------- 07/08/15 | -'}{[]//-;'; (lots of characters) (name - Aug 7, 2015) -------------------07/08/15 

长度总是变化很大(名称也变化 – 2015年1月27日) – 27/01/15


 Varied text (name - Aug 17, 2015) ----------------------------------------- 17/08/15 

与数据的问题是,它使用几个字符,并不断变化,并且一些date显示一个数字较短,(例如(名称 – 2015年8月17日)(名称 – 2015年8月7日))使其难以使用=右边和=中间的位置变化(从阅读停止Excel作为date,我已经包括了下面的图片,因为我知道我的数据不是以一个干净的方式显示,提前道歉。

以下是我尝试过的一些公式:


  =DATEVALUE(MID(A2,FIND("-",A2)+1,LEN(A2)- FIND("-",A2)-1)) 
  • 由于符号太多,无法返回正确的值。

 =RIGHT(A2,14) , =SUBSTITUTE(RIGHT(C2,14),")","") , =datevalue 
  • 无法在一天中提取一位数的date。

数据

与公式

这是你的第一个公式的一个更长的版本,但它适用于你提供的例子:

 =DATEVALUE(MID(A1,FIND("@",SUBSTITUTE(A1,"-","@",(LEN(A1)-LEN(SUBSTITUTE(A1,"-","")))/LEN("-")))+1,LEN(A1)- FIND("@",SUBSTITUTE(A1,"-","@",(LEN(A1)-LEN(SUBSTITUTE(A1,"-","")))/LEN("-")))-1)) 

它删除所有的“ – ”,但最后一个和你做文本的其余部分一样。