您的位置 首页 java

Excel年龄计算公式在不同数据格式中的写法

excel中已知某人出生日期,怎么计算他的年龄?!

在下图数据表中包含了三种不同的数据格式, 第一个是常规的日期格式的出生日期,第二个是一个文本的日期,第三个是一个身份证号码。

怎么使用公式来计算出这三种数据类型的日期所对应的年龄,接下来分别进行三种公式的写法介绍。

第一种:常规日期格式计算年龄

常规的日期格式包含两种,一个是年月日之间用 短横杠“-” 分隔的日期,另一个是 斜杠“/” 分隔的日期。

对于常规日期格式的年龄计算,我们可以直接使用日期差计算函数datedif,它的表达式为: =datedif(开始日期,结束日期,匹配类型)

该函数有三个参数, 第1和第2参数必须为日期格式,第3参数是要返回的时间类型,是天还是年或者月份。

其作用是返回开始日期到结束日期的时间差,结果可以用年、月、天数来表示。

我们先来输入公式:

=DATEDIF(A2,TODAY(),”y”)

从表达式可知, today函数表达式作为结束日期,则表示当前日期减去A2所代表的的日期,然后返回年数,这里 “Y”表示年数的匹配类型

当天日期是 “2022-11-29” ,减去出生日期 “1987-03-19” ,结果为 35 ,则得到此人的年龄为35岁!

第一种:文本日期格式求年龄

如数据表“19870319”的日期并不属于日期格式,而是一个文本日期,它无法被日期数直接进行运算,因此,我们需要先行对该文本日期进行格式的转换。

excel 中,能够对文本进行统一的格式转换的函数,只有一个,即是 TEXT函数

于是作者输入一个公式:

= DATEDIF( TEXT(A3,”0000-00-00″) ,TODAY(),”y”)

这里嵌套了text函数公式,作用是将文本日期转换为上面所讲的用横杠分隔的常规日期格式,通过text函数格式转换,使其成为能够被日期函数datedif进行运算的一个日期值。

我们从下图可见,其结果计算为35,则是正确的!

第三种:身份证号码计算年龄

由于数据是一个身份证号码,那么我们需要先提取出号码中的出生日期。

提取文本指定字符串,我们可以使用mid函数,于是通过mid+text+datedif函数的嵌套,我们输入一个组合公式:

=DATEDIF( TEXT( MID(A4,7,8) ,”0000-00-00″) ,TODAY(),”y”)

这里 mid函数是从号码第7个字符开始,提取8个字符,正好是出生日期的8个字符,由于提取出来的并不是常规的日期格式数据,因此再利用text函数进行格式转换,最后再使用 datedif函数 进行两个日期的间隔计算,得出最后结果!

从上面几个示例的公式介绍,大家可以注意到, 主要是两个日期的计算,使用datedif函数,关键是日期格式的转换,可以使用text函数。

文章来源:智云一二三科技

文章标题:Excel年龄计算公式在不同数据格式中的写法

文章地址:https://www.zhihuclub.com/180596.shtml

关于作者: 智云科技

热门文章

网站地图