目前,我使用查询从数据库导出了一些数据,其中“注释”列的每一行都以格式为MM / DD / YY的日期开头。
我使用=LEFT(TEXT,8)
函数仅提取日期,但碰巧某些日期的格式不一致,所以我们可能会有一些M / D / YY,其中月份或日期不是两个数字,这将包括';'作为分隔符,因为它少于8个字符。
有没有办法可以格式化文字,以便';'被排除在外?这样我就可以对数据进行排序。
答案 0 :(得分:4)
我认为DATEVALUE
函数可以满足您的大部分需求。它采用许多不同的日期格式(M / D / YYYY,MM / DD / YYYY等)并将其转换为excel日期(即自1900年1月1日以来的天数)。
下面的公式表示:
DATEVALUE
功能假设2013年9月1日是细胞A2:
Input Data Sortable Excel Date
---------- -------------------
9/1/2013; =IFERROR(DATEVALUE(A2),DATEVALUE(LEFT(A2,FIND(";",A2)-1)))
09/2/2013; 9/2/2013
10/1/2013; 10/1/2013
10/10/2013 10/10/2013
我制作了一个实时Excel样本here。
答案 1 :(得分:2)
假设您的文字如下:; 1 /; 2/13或1/2/13 ;;或;;; 1/2/13
你可以使用这样的替代品:
=SUBSTITUTE(A1,";","")
结果将是:
答案 2 :(得分:2)
因此,如果日期是A2的前6个,7个或8个字符,您可以使用此公式获取日期
=LOOKUP(10^10,LEFT(A2,{6,7,8})+0)
格式化所需日期格式的结果单元格
由于结果是有效日期,您可以对这些进行排序,就像对数字进行排序一样