这种⽇期格式连分列都⽆法处理,你还有什么招对付他?按照出⽣⽇期计算年龄的公式⼤家⼀定不陌⽣:
=DATEDIF(A2,TODAY(),"y")
但是在今天这个例⼦中,公式却得到了错误值:
A列的⽇期是从系统导出的,并且是⽉⽇年的格式,难道和这个⽇期格式有关系吗?
经过测试,这种⽉⽇年格式的⽇期⽆法通过单元格格式设置或者是分列的⽅法转换为标准⽇
期。
强调:分列被称为不规则⽇期的终结者,竟然对这种⽇期都⽆法处理。
看来只能通过公式进⾏转换了。
⽐较常规的思路是使⽤LEFT、MID和RIGHT函数将年⽉⽇分别提取出来,再⽤DATE函数进⾏mid函数提取年月日
转换,公式为:
=DATEDIF(DATE(RIGHT(A2,4),LEFT(A2,2),MID(A2,4,2)),TODAY(),"y")
转⽇期的这部分DATE(RIGHT(A2,4),LEFT(A2,2),MID(A2,4,2))⽤到了四个函数,但是都很好理
解,就不多说了。
想重点说⼀下的是下⾯这⼏种思路
思路1:
=DATEDIF(RIGHT(A2,4)&"/"&LEFT(A2,5),TODAY(),"y")
这个思路没有将年⽉⽇分别提取后再合成⽇期,⽽是将年提取后放到最前⾯,把⽉⽇年变成了
年⽉⽇。
思路2:
=DATEDIF(MID(A2&"/"&A2,7,10),TODAY(),"Y")
这个思路就⽐较有意思了,没有提取年⽉⽇的任何⼀个信息,⽽是将⽉⽇年这个格式进⾏了合
并,来看下A2&"/"&A2的效果是什么:
看明⽩了吧,思路是不是够新鲜。
有时候就是这样,⼤神写出来我们能看懂,但是⾃⼰就想不出来……
不过既然已经明⽩这个思路了,就可以继续发挥⼀下:
将A2&"/"&A2换成REPT(A2&"/",2)也是⼀样的道理了。
=DATEDIF(MID(REPT(A2&"/",2),7,10),TODAY(),"Y")
怎么样,今天这个问题中你有什么收获吗?
或者在这个问题的解法上你有另外的思路,都欢迎留⾔分享!
怎么做练习才是学习Excel正确的打开⽅式?
1、⾸先独⽴思考必不可少,看见习题先独⽴思考,不懂就要问指的是独⽴思考之后还是不懂,
不经过思考就提问那是对⾃⼰的不负责;
2、思考之后还不会怎么办?这个世界没有百度⼀下不会的,如果有,那就百度两下;
3、看了案例也不会做练习怎么办?那就加⼊⽼菜鸟的Excel学习吧,还有⽼菜鸟的每
天推送教程,聊可以让众多Excel⽼师和⾼⼿与你⼀起交流。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。