18位身份证号码中的生日是从第7位开始至第14位结束。提取出来后为了计算“年龄”应该将“年”“月”“日”数据中添加一个“/”或“-”分隔符。
①正确输入了身份证号码。(假设在D2单元格中)
②将光标定位在“出生日期”单元格(E2)中,然后在单元格中输入函数公式“=MID(D2,7,4)&"-"&MID(D2,11,2)&"-"&MID(D2,13,2)”即可计算出“出生日期”。
这是以前网上搜到的。
1、以excel2010版本为例,如下图所示,A列的身份要把年月日取出来;
2、在B2单元格插入MID函数,MID函数指从指定的字符串中截取出指定数量字符,例如公式中的“MID(A2,7,8)”,第一个参数表示A2单元格中的身份证号,7表示从第7位开始计算,8表示从第7位开始共截取8位数字;
3、输入完公式后按enter键,即可得出A2单元格的出生日期,往下拉填充公式即可;
4、如想要破折号的年月日格式,可用text和mid函数结合,如下图所示在B2单元格输入公式=TEXT(MID(A2,7,8),"0000-00-00"),按enter键即可得出年月日结果;
5、往下拉填充公式即可把A列身份证的年月日提取出来了,且单月或单日前都加0。
这个公式是18位身份证的
年龄:就是从身份证号中提取出出生年份,用当前的年份去减
性别:判断倒数第2位是奇数还是偶数
年月日:从身份证中提取出相应的年月日(这个公式同时适用15位和18位)
如果重写这些公式
年龄:
=if(len(a1)=18,datedif(date(mid(a1,7,4),mid(a1,11,2),mid(a1,13,2)),now(),"y"),datedif(date("19"&mid(a1,7,2),mid(a1,9,2),mid(a1,11,2)),now(),"y"))
性别:
=if(len(a1)=18,if(mod(value(mid(a1,17,1)),2)=1,"男","女"),if(mod(value(mid(a1,15,1)),2)=1,"男","女"))
年月日:
=if(len(a1)=18,date(mid(a1,7,4),mid(a1,11,2),mid(a1,13,2)),date("19"&mid(a1,7,2),mid(a1,9,2),mid(a1,11,2)))