首页 生活常识

计算年龄的公式 excel(excel根据身份证号码计算年龄和性别)

时间:2024-08-24 09:31:05  作者:码农要翻身

有时候我们需要获取一个人的性别和年龄但表格中只有身份证号码,如何通过身份证号码计算一个人的年龄和性别呢?最终效果如下:

一、计算年龄

我们先理思路:年龄=当前年份-出生年份+1;

首先,我们我们要取得当前的年份,在excel中获取当前年份的方法为Year(today()),在任意excel单元格中输入 = Year(today())就会得到当前年份,如下图:

其次,我们要从身份证号码中提取出生年份,身份证号码有18位,其中第7位至11位为出生年份,这时我们需要用到函数mid(字符串,起始位置,长度),该函数作用是从指定位置截取字符串。如:我们在单元格中输入=mid("******198407110510",7,4),会得到 1984,但这是个字符串,我们计算两个数相减,减数和被减数必须是数字,这时我们要用到int函数,将字符串转换成整数:=int(mid("******198407110510",7,4))。下面我们来根据身份证号码计算年龄。公式如下:=year(today())-int( mid("******198407110510",7,4) )+1;

下面我们打开excel,随便输入一些数据,然后在年龄列输入公式=YEAR(TODAY())-INT(MID(B2,7,4))+1。注:B2为身份证号码所在单元格。效果如下:

以上身份信息均为伪造


二、计算性别

个人18位身份证号码,倒数第二位标识的就是性别,奇数为男,偶数为女,按照以上方法,我们先从身份证号码中提取倒数第二位,公式如下:=mid("******1988****7013",17,1),会等到

1,我们还需要用到公式MOD计算奇数或偶数,如:=mod(3,2)会返回1,=mod(4,2)会返回0,这就达到了计算奇数偶数的目的。下面我们还需要用到函数IF,参数如下:

if( 条件,"条件为真返回值","条件为假返回值")

我们在excel单元格中输入=if( mod(3,2),"男","女") 以后就会返回男。下面我们应用到表格中:

编制一些数据,然后在性别列输入公式=if( mod(mid("******1984****0726",17,1),2),"男","女")这时就会得到“女”。正式使用Mid时第一个参数是身份证号所在单元格地址


重点回顾:

1.根据身份证号码计算年龄公式 =year(today())-int( mid("身份证号所在列地址",7,4) )+1;

2.根据身份证号码计算性别公式=if( mod(mid("身份证号所在列地址",17,1),2),"男","女")


注:需要公式计算的单元格格式必须为“常规”,否则只显示公式。

相关文章