Excel中计算年龄有五种可靠方法:一、用DATEDIF(B2,TODAY(),"Y")得周岁;二、用INT(YEARFRAC(B2,TODAY()))替代;三、从身份证第7-14位提取日期再计算;四、用SUBSTITUTE和DATEVALUE处理小数点分隔的文本日期;五、用DATEDIF组合“Y”“YM”“MD”参数得出“X年X个月X天”。

如果您在Excel中已录入人员的出生日期,但需要快速得出其当前年龄,则可能是由于日期格式不规范或公式选用不当导致结果错误。以下是多种可靠且可直接套用的年龄计算方法:
一、使用DATEDIF函数计算整年年龄
DATEDIF函数是Excel中专用于计算两个日期间差值的隐藏函数,兼容性好、结果精确,适用于所有版本,尤其适合计算周岁。
1、确保出生日期所在单元格(例如B2)为有效日期格式,而非文本;若显示为左对齐或带绿色小三角,需先转换为日期。
2、在目标单元格中输入公式:=DATEDIF(B2,TODAY(),"Y")。
3、按回车键确认,结果即为截至今日的完整周岁年龄。
二、使用YEARFRAC与INT组合计算周岁
YEARFRAC函数返回两个日期之间的年份小数,配合INT取整可避免DATEDIF在某些区域设置下不可用的问题,结果同样为周岁。
1、确认B2单元格为标准日期格式(如2000-05-15或2000/05/15)。
2、在目标单元格中输入公式:=INT(YEARFRAC(B2,TODAY()))。
3、按回车键,自动返回向下取整后的周岁数值。
三、从身份证号码中提取出生日期并计算年龄
当原始数据仅含18位身份证号(如11010119900307251X),需先解析第7至第14位为出生日期,再参与年龄运算。
1、在辅助列(如C2)中提取并转换出生日期:输入公式 =DATE(MID(B2,7,4),MID(B2,11,2),MID(B2,13,2))。
2、在D2单元格中调用DATEDIF函数:输入公式 =DATEDIF(C2,TODAY(),"Y")。
3、若B2为文本型身份证号且首字符被误识别为数字,可在输入前将该列设置为“文本”格式,或在输入时于身份证号前加英文单引号(')。
四、处理非标准日期文本(如“1995.08.12”含小数点分隔符)
当出生日期以小数点作为分隔符(如1995.08.12)存储为文本时,Excel无法直接识别为日期,需先标准化格式再计算。
1、在辅助列中将小数点替换为短横线:输入公式 =SUBSTITUTE(B2,".","-")。
2、嵌套DATEVALUE函数将其转为可计算日期:修改为 =DATEVALUE(SUBSTITUTE(B2,".","-"))。
3、最终年龄公式为:=DATEDIF(DATEVALUE(SUBSTITUTE(B2,".","-")),TODAY(),"Y")。
五、计算“X年X个月X天”格式的精确间隔
当需呈现更精细的年龄表达(如“32年5个月14天”),需分段调用DATEDIF函数拼接结果。
1、在目标单元格中输入完整公式:=DATEDIF(B2,TODAY(),"Y")&"年"&DATEDIF(B2,TODAY(),"YM")&"个月"&DATEDIF(B2,TODAY(),"MD")&"天"。
2、确保B2为合法日期格式,否则返回#VALUE!错误。
3、该公式依次调用Y(整年)、YM(忽略年后的整月)、MD(忽略年月后的天数)三个参数,实现逐级分解。










