看下边例子,A列列举了几个出生日期,B、C列分别用了两种算法计算年龄,B列只计算年份差,不管到没到生日;C列计算为:如果不到生日(即不满一整年)不计算。B2与C2年龄计算不同,就是因为今天是11月4日,还不到生日,所以C2没有计算这一年。
B2公式=YEAR(TODAY())-LEFT(A2,4);
C2公式=DATEDIF(DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2)),TODAY(),"y")
公式解析:
today():返回当前日期(就是今天的日期),此函数无参数;
year(日期):返回日期所在的年份;
left(a2,4):提取A2单元格左边4个字符,即出生日期的年份;
mid(a2,5,2):从A2单元格的第5个字符开始,提取2个字符,即月份;
right(a2,2):提取A2单元格右边2个字符,即日;
date(年,月,日):返回由三个参数组成的日期;
datedif(开始日期,结束日期,返回类型):返回开始日期到结束日期之间的时间差,第三参数“Y"年份差,"M"月份差,"D"天数差,"MD"忽略年月计算天数差,"YD"忽略年计算天数差,"YM"忽略年计算月份差。