有的人录入日期时喜欢用小数点做分割,类似这样的“19.03.01”,这是一个不好的习惯,因为这种方法输入的日期不会被Excel识别为日期,只能当作是文本,如果涉及日期相关的计算时,就需要把这个日期给转换成Excel承认的日期格式:

如何做这个转换呢?我们要用到两个函数:

具体的情况有两种,一种是年月日都有的转换,一种是只有年月的转换:

年月日转换:

首先用SUBSTITUTE函数替换掉小数点,变成2019-3-1这样的格式,然后再用TEXT函数,使用"e年m月d日"格式来显示数据:

excel函数11种常用日期(Excel使用TEXT函数自定义日期格式)(1)

我们来看一步替换的结果:

excel函数11种常用日期(Excel使用TEXT函数自定义日期格式)(2)

如果我们在SUBSTITUTE前面添加两个减号,然后设置单元格格式为长日期,就直接转换成了日期格式。

年月转换

这个就要注意了,应为会出现预料不到的情况:

如果我们仍然使用上面的公式,结果是这样的:

excel函数11种常用日期(Excel使用TEXT函数自定义日期格式)(3)

我们需要的是2011年6月,结果明显是错误的,原因在哪里呢?

Excel虽然会主动添加年份的前两位,他也是依据年份的数值来确定如何添加,如果年的部分小于等于12,他就会认为这是月份,不是年份,就会自动添加当前的2019年。为了纠正这个误区,我们需要给数据统一补一个日期:

excel函数11种常用日期(Excel使用TEXT函数自定义日期格式)(4)

这个-1可以添加在SUBSTITUTE函数后面,也可直接添加在A2后面:

excel函数11种常用日期(Excel使用TEXT函数自定义日期格式)(5)

得到的结果是一样的。

这个"e年m月"只能自动识别最接近当前年份的这个日期,还拿11.06来说,为什么不是1911年6月 ,而是2011年6月,那么这个日期的转折点在哪里:

excel函数11种常用日期(Excel使用TEXT函数自定义日期格式)(6)

所以在使用这个方法转换日期时一定要注意,如果你要的结果是1929而不是2029那你就要另外想办法来转换了。

,