说明
如果今天是 2021年01月22日
A的生日是2000年01月20日,B的生日是2000年01月23日
那么, A的真实年龄为21,B的真实年龄为20
Excel公式
使用函数
- TODAY() //当前时间
- YEAR() //返回当前年
- MONTH() //返回当前月
- IF(条件,条件成立执行,条件失败执行)
A2为出生日期单元格的表格标识
YEAR(TODAY())
-
IF(MONTH(TODAY())>MONTH(A2),YEAR(A2),IF(MONTH(TODAY())<MONTH(A2),YEAR(A2)+1,IF(DAY(TODAY())>DAY(A2),YEAR(A2),YEAR(A2)+1))
)
PS:如果只要年龄想要当前年减去出生年可以使用如下公式
DATEDIF()
求两个日期之间的差值,
如年、月、日,具体是计算什么的根据第三个参数决定,前两个参数为时间
LEFT()
第一个参数为文本数据、第二个参数为数字
保留数据从左数的前多少个文本
方法一(数据为日期格式): DATEDIF(A2,NOW(),"y")
方法二(数据前四位为年份):YEAR(TODAY())-LEFT(A2,4)
效果
如需了解具体逻辑可以继续向下阅读
代码逻辑
数据引用说明中的数据
//获取出年的月日是否大于当前时间的月日//也就是说不足一年的话 我直接让出生年+1来达到计算周岁的目的如果(当前月 大于 出生月){返回 出生年}否则 如果(当前月 小于 出生月){返回 出生年+1}否则{如果 (当前日 大于 出生日){.返回 出生年}否则{返回 出生年+1}}//计算完成之后用当前年减去计算后的出生年即为所求的周岁
其他
出生年月下方的时间格式可以自己定义,想要图里的格式的可以如下图配置