知道出生日期,如何计算截止到指定日期(精确到月,日)的年龄。EXCEL公式。

比如:甲某人1986年9月1日出生,计算截止2012年8月31日的年龄,要精确到月,日。计算年龄的公式:=DATEDIF(G15,TODAY(),"Y"),这个公式实用性... 比如:甲某人1986年9月1日出生,计算截止2012年8月31日的年龄,要精确到月,日。
计算年龄的公式:=DATEDIF(G15,TODAY( ),"Y"),这个公式实用性差。
因为涉及人员参保年龄问题,必须克服这个公式的弊端。
展开
 我来答
sharon_nan
2018-03-30 · TA获得超过1万个赞
知道小有建树答主
回答量:84
采纳率:100%
帮助的人:1.3万
展开全部

假设表格中A列中从A2起,存放着出生日期,B列为周岁。

第1种方法:在B2中复制公式:=INT(("2006-8-31"-A2)/365.25)

第二种方法:在B2中复制公式:=IF("2006-8-31">=DATE("2006",MONTH(A2),DAY(A2)),2006-YEAR(A2),2006-YEAR(A2)-1)

第3种方法:在B2中复制公式:=(2006-YEAR(A2))+IF((8-MONTH(G2))<0,-1,0)

第4种方法:在B2中复制公式:=IF("2006-8-31">=A2,IF(MONTH("2006-8-31")>MONTH(A2),YEAR("2006-8-31")-YEAR(A2),IF(MONTH("2006-8-31")=MONTH(A2),(IF(DAY("2006-8-31")>=DAY(A2),YEAR("2006-8-31")-YEAR(A2),YEAR("2006-8-31")-YEAR(A2)-1)),YEAR("2006-8-31")-YEAR(C7)-1)),"还没出世呢!")

第5种方法:在B2中复制公式:=DATEDIF(A2,"2006-8-31","y")

这个函数是Excel的1个隐藏函数,只是为了沿袭Lotus123的1个函数。语法为:DATEDIF(start_date,end_date,unit),“start_date”为开始日期,“end_date”为结束日期,“unit”返回:

"Y"时间段中的整年数;

"M"时间段中的整月数;

"D"时间段中的天数;

"MD"start_date与end_date日期中天数的差,忽略日期中的月和年;

"YM"start_date与end_date日期中月数的差,忽略日期中的日和年;

"YD"start_date与end_date日期中天数的差,忽略日期中的年。

示例:DATEDIF("2001/1/1","2003/1/1","Y")等于2,即时间段中有2个整年。DATEDIF("2001/6/1","2002/8/15","D")等于440,即在2001年6月1日和2002年8月15日之间有440天。

DATEDIF("2001/6/1","2002/8/15","YD")等于75,即在6月1日与8月15日之间有75天,忽略日期中的年。

DATEDIF("2001/6/1","2002/8/15","MD")等于14,即开始日期1和结束日期15之间的差,忽略日期中的年和[)月。

经实践,只有第5种方法没有出现错误。如图,C到F列依次用第一到第4种方法。B列用第5种方法。统计时间用2006年8月31日来做。只有B列好象没出问题。C到F列出错原因待查。

参考资料:网页链接

1975qjm
高粉答主

推荐于2017-12-15 · 关注我不会让你失望
知道大有可为答主
回答量:2万
采纳率:74%
帮助的人:7403万
展开全部
=DATEDIF(G15,"2012/8/31","Y")&"岁"&DATEDIF(G15,"2012/8/31","YM")&"月"&DATEDIF(G15,"2012/8/31","MD")

=TEXT(DATEDIF(G15,"2012/8/31","D"),"YY岁M月D日")

公式中的"2012/8/31"换成该日期所在单元格
追问
谢谢 。我还有疑问:比如甲某1986年9月2日出生,计算截止2012年9月1日的年龄,有的公式计算出来时26岁,但实际上这个却未满26周岁,你提供的公式很好,但是我希望能考虑到是否满X周岁,只要周岁,不需月,日。也就是确保计算出来的年龄都是满X周岁的就行。如果计算截止日期比他生日小一天都不能算满X周岁。呵呵,有点复杂。

麻烦你再提供一个实用公式。我加分。
追答
=DATEDIF(G15,"2012/9/1","Y")
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gaojiangyou
2019-06-18
知道答主
回答量:17
采纳率:0%
帮助的人:1.6万
展开全部
这样就可以了。=DATEDFI(G15,DATE(YEAR(TODAY()),8,31),"Y")。YEAR(TODAY())也可指定为2012
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老徐的Excel
2019-06-17 · TA获得超过250个赞
知道答主
回答量:596
采纳率:0%
帮助的人:33.7万
展开全部

excel年龄计算精确到年月日

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式