夜雨聆风学习资料网

ARTICLE · 991533

excel(wps)如何批量提取身份证号中的出生年月日、年龄、性别

excel(wps)如何批量提取身份证号中的出生年月日、年龄、性别
一、批量提取身份证号中的出生年月日
如图,在D2单元格中输入:

=TEXT(MID(C2,7,8),"0000‑00‑00")

按【Enter】键,出生年月日就提取出来了
鼠标放在D2单元格右下角,变成黑色实心十字,双击填充
就批量提取身份证号中的出生年月日了
TEXT:将数值转换为按指定数字格式表示的文本
TEXT(值,数值格式)

MID:返回文本字符串中从指定位置开始的特定数目的字符。

MID(字符串,开始位置,字符个数)

=TEXT(MID(C2,7,8),"0000‑00‑00")

MID(C2,7,8):从C2单元格的第7个字符开始取,一共提取8个字符,即20000101

TEXT(...,"0000‑00‑00"):将提取出来的20000101转成日期文本2000-01-01

2.只提取出生年月:

=TEXT(MID(C2,7,8),"0000‑00")
二、根据身份证号来计算年龄
1.根据今日日期来计算年龄
如图,在E2单元格中输入:
=DATEDIF(TEXT(MID(C2,7,8),"0000-00-00"),TODAY(),"Y")
按【Enter】键,年龄就计算出来了
DATEDIF函数,主要用于计算两个日期之间的天数、月数或年数。其返回的值是两个日期之间的年\月\日间隔数。
DATEDIF(开始日期,终止日期,比较单位)
TODAY():获取电脑系统今天的日期
DATEDIF(开始日期,终止日期,"Y"):计算两个日期间的整年数(周岁),没过生日会自动少算1岁。
2.根据固定日期来计算年龄,如2026-8-30
=DATEDIF(TEXT(MID(C2,7,8),"0000-00-00"),DATE(2026,8,30),"Y")
把TODAY()换成DATE(2026,8,30)
DATE(年,月,日):生成一个固定日期
三、根据身份证号来提取性别
如图,在F2单元格中输入:
=IF(MOD(MID(C2,17,1),2)=1,"男","女")
按【Enter】键,性别就出来了
IF函数,如果条件为真,该函数将返回一个值;如果条件为假,函数将返回另一个值。
IF(测试条件,真值[,假值])
MOD函数返回两数相除的余数。结果的正负号与除数相同。
MOD(数值,除数)
=IF(MOD(MID(C2,17,1),2)=1,"男","女")

MID(C2,17,1) :从C2第17位开始,截取1个字符,就是性别数字。

MOD(数字,2) :求除以2的余数。

- 余数=1 → 奇数 → 男

- 余数=0 → 偶数 → 女

IF(MOD(…)=1,"男","女") :余数等于1输出男,否则输出女。

相关学习资料