今天做信息表,要计算员工的年龄。老是感觉DATEDIF()不科学,快接近多少岁没有办法体现出来。很久以前写过年龄的计算公式,想不起来了。只得重写,现在写出来了,分享给大家。至于少数点要多少位,大写自行决定即可。
原则:日期的相加减,是天数的相加减。每4年为一个润年。电脑计算日期起始时间为1900-01-01。而且这个公式可以应用于旧版本或新版本
1、出生到现在经历过多少个闰年,int((当天日期-出生日期)/366/4)
2、出生到现在经历过多少天,当天日期-出生日期
3、年龄=(出生到现在经历过多少天-出生到现在经历过多少个闰年)/365
完整公式:
[(当天日期-出生日期)-int((当天日期-出生日期)/366/4)]/365
两种方法,大家可以对比一下
欢迎批评指正两种方法,大家可以对比一下欢迎批评指正而且,DATEDIF()函数还存在缺陷,当起始日期为某年2月29日,且结束日期为某年2月28日时,结果会少1年。而用我这个方法则可以完全避免