【Excel】从混合内容中提取姓名和年龄,公式和原理都有了
通过一个身份证号码,咱们能获取许多信息,比如说,知道是男是女,知道出生于哪个年代,甚至知道所在的省份或者地区。
今天就来根据已知的姓名和身份证号,来计算出他(她)的年龄吧!
1、提取姓名
先来看数据:
B2单元格提取姓名的公式为:
=LEFT(A2,LENB(A2)-LEN(A2))
下面咱们就解析一下公式的计算过程:
在计算机的中存储时,一个半角的数字或是字母占用1个字节,一个中文字符或是全角数字字母,则需要占用两个字节。咱们就利用这个规律,来提取字符。
①Lenb函数统计A2单元格的字节数,结果是24。
②len函数统计出A2单元格的字符数,结果是21。
③再使用LEFT函数,从A2单元格的左侧开始,提取3个字符,最终得到姓名。
2、提取身份证号码
从计算姓名字符个数的基础上,咱们再来提取身份证号码,C2单元格的公式为:
=MID(A2,LENB(A2)-LEN(A2)+1,18)
下面咱们就继续解析一下这个公式的计算过程:
①A2单元格的字节数减去字符数,得出最后一个中文字符所在位置,结果是3。
②在最后一个中文字符位置的基础上加1,得出第一个数字的位置4,以此作为MID函数所要提取字符的起始位置。
③再使用Mid函数从A2单元格中,根据步骤2计算出的起始位置,提取18位字符,得出身份证号码。
3、提取出生日期
从提取身份证号码方法的基础上,咱们再来提取出生日期。
B2单元格的公式为:
=TEXT(MID(MID(A2,LENB(A2)-LEN(A2)+1,18),7,8),'0-00-00')
再来解析一下这个公式的计算过程:
④用mid函数,根据提取出的身份证号,从第7位开始,提取8个字符,得到完整的身份证的出生年月日,结果为19880328。
⑤用text函数格式化提取的出生年月日,得到出生日期。
4、计算年龄
从提取出生日期方法的基础上,咱们再来计算年龄。
B2单元格公式为:
=DATEDIF(TEXT(MID(MID(A2,LENB(A2)-LEN(A2)+1,18),7,8),'0000-00-00'),TODAY(),'y')&'岁'
再来解析一下这个公式的计算过程:
DATEDIF函数的计算过程是(步骤⑤提取的出生日期,TODAY函数计算出的当前日期,返回年数差“y”)
最后再连接一个文本“岁”,得到最终结果为“29岁”。