比如以2006年8月31日为统计日期,如何让Excel以出生日期批量计算周岁呢?经过搜索和实践,有如下一些可试的办法:
假设表格中A列中从A2起,存放着出生日期,B列为周岁。如图
第一种方法:在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)第三种方法:在B2中复制公式:=(2006-YEAR(A2))+IF((8-MONTH(G2))<0,-1,0)第四种方法:在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)),'还没出世呢!')第五种方法:在B2中复制公式:=DATEDIF(A2,'2006-8-31','y')这个函数是Excel的一个隐藏函数,只是为了沿袭Lotus123的一个函数。语法为:DATEDIF(start_date,end_date,unit),“start_date”为开始日期,“end_date”为结束日期,“unit”返回:
'Y' 时间段中的整年数;
'M' 时间段中的整月数;
'D' 时间段中的天数;
假设表格中A列中从A2起,存放着出生日期,B列为周岁。如图
'Y'
'M'
'D'
