Excel根据身份证号提取信息

概览

本篇文章主要对根据身份证号码提取出生年月日、年龄、性别、退休年龄这三项进行讲解。

一. 提取出生年月日

公式:=TEXT(MID(B2,7,8),"0000-00-00")

  1. MID(B2,7,8):表示从单元格 B2 中的字符串(这里是身份证号),从第 7 个字符开始,提取长度为 8 个字符的子串。通常这 8 个字符就是包含出生年月日的信息;

  2. TEXT(..., "0000-00-00"):使用 TEXT 函数将提取出来的出生年月日信息按照指定的格式"0000-00-00"进行格式化显示。这样就可以把类似"19901010"这样的字符串转化为"1990-10-10"这种日期格式的外观。

二. 提取年龄

公式:=DATEDIF(C2,"2024-06-13","y")

  1. DATEDIF函数用于计算两个日期之间的差值;
  2. C2是起始日期所在的单元格;
  3. "2024-06-13"是结束日期;
  4. "y"表示要计算的是两个日期之间的整年数。

三. 性别

公式:=IF(MOD(MID(B2,17,1),2)=1,"男","女")

  1. MID(B2,17,1):从单元格 B2 所代表的内容(比如身份证号)中,提取从第 17 位开始的长度为 1 的字符。在身份证号中,第 17 位数字通常用于表示性别;
  2. MOD(MID(B2,17,1),2):对提取出来的第 17 位数字进行取模运算(即除以 2 后的余数);

IF(...):根据取模运算的结果进行判断,如果余数等于 1(说明第 17 位是奇数),则返回"男";如果余数为 0(说明第 17 位是偶数),则返回"女"。通过这种方式就可以根据身份证号的特定位置数字来判断对应的性别。

四. 提取计算退休年月日

公式:=EDATE(D2,IF(F2="男",720,IF(F2&C2="女干部",660,600)))

使用EDATE函数计算退休年月。EDATE函数的第一个参数是起始日期,第二个参数是间隔的月数。第一个参数加上第二个参数的值,比如起始是2024-06-13,第二个参数是120(10年),那么最后得到的数据是2034-06-13,对应的,如果第二个参数是负数,则时间往前推。

  1. IF(F2="男",720,IF(F2&C2="女干部",660,600)):这部分是一个嵌套的IF函数,用于确定间隔的月数。它根据F2单元格中的性别和C2单元格中的职级来判断;
  2. 如果性别为"男",则返回 720,表示 60 岁退休(720 个月 = 60 年);
  3. 如果性别为"女"且职级为"女干部",则返回 660,表示 55 岁退休(660 个月 = 55 年);
  4. 如果性别为"女"且职级不是"女干部",则返回 600,表示 50 岁退休(600 个月 = 50 年)。

五. 拓展

公式:=COUNTIFS($A:$A,$G2,$C:$C,H$1)/COUNTIF($A:$A,$G2)

COUNTIFS($A:$A,$G2,$C:$C,H$1):这部分使用 COUNTIFS 函数进行多条件计数。它统计在列 A 中满足等于 $G2 这个条件,同时在列 C 中满足等于 H$1 这个条件的单元格数量。

/:表示除法运算。

COUNTIF($A:$A,$G2):这里使用 COUNTIF 函数统计在列 A 中等于 $G2 的单元格数量。

疑问:公式中的$是什么?

在 Excel 中,$符号用于表示绝对引用。绝对引用是指在公式中使用单元格或单元格区域的地址时,无论将公式复制到哪个位置,引用的单元格地址都不会发生变化。

详细解释:

css 复制代码
例如,在公式=$A$1+$B$1中,$A$1和$B$1都是绝对引用,
无论将公式复制到哪个单元格,$A$1和$B$1始终指向
 A1 和 B1 单元格。
相对引用则是指在公式中使用单元格或单元格区域的地址时,
当将公式复制到其他位置时,引用的单元格地址会根据
相对位置自动调整。例如,在公式=A1+B1中,
A1 和 B1 是相对引用,当将公式复制到
 C2 单元格时,公式会自动调整为=C1+D1。
混合引用则是指在公式中同时使用绝对引用和相对引用。
例如,在公式=$A1+B$1中,$A1是绝对引用,B$1是相对引用,
当将公式复制到 C2 单元格时,公式会自动调整为=$A2+C$1。
在输入公式时,可以通过手动输入$符号来指定绝对引用,
也可以在选中单元格地址后按 F4 键来快速切换绝对引用、
相对引用和混合引用。

相关例子可参考 按部门统计男女比例,方法比拼

相关推荐
bin91534 小时前
【EXCEL数据处理】000017 案例 Match和Index函数。
excel
shandianchengzi6 小时前
【记录】Excel|Excel 打印成 PDF 页数太多怎么办
pdf·excel
bin91539 小时前
【EXCEL数据处理】000010 案列 EXCEL文本型和常规型转换。使用的软件是微软的Excel操作的。处理数据的目的是让数据更直观的显示出来,方便查看。
大数据·数据库·信息可视化·数据挖掘·数据分析·excel·数据可视化
一个散步者的梦16 小时前
Excel常用函数
excel
bin91531 天前
【EXCEL数据处理】000009 案列 EXCEL单元格数字格式。文本型数字格式和常规型数字格式的区别
大数据·前端·数据库·信息可视化·数据分析·excel·数据可视化
Eiceblue2 天前
Python保留数据删除Excel单元格的函数和公式
开发语言·python·excel
bin91532 天前
【EXCEL数据处理】000014 案例 EXCEL分类汇总、定位和创建组。附多个操作案例。
信息可视化·数据挖掘·数据分析·excel·数据可视化·数据图表·excel 数据分析
育种数据分析之放飞自我2 天前
GWAS分析中显著位点如何注释基因:excel???
linux·算法·excel
PowerBI学谦2 天前
Python in Excel 正式发布!
开发语言·python·excel
bin91532 天前
【EXCEL数据处理】000011 案列 EXCEL带有三角形图标的单元格转换,和文本日期格式转换。
大数据·数据库·信息可视化·数据挖掘·数据分析·excel·数据可视化