表格提取出生日期公式_身份z转换出生日期

表格提取出生日期公式_身份z转换出生日期,第1张

表格提取出生日期公式_身份z转换出生日期 身份z号,大家都不陌生,但是对于其包含的信息可能并不是特别了解,除了最常见的出生年月,性别外,还包含哪些信息?如果要在Excel中进行计算,应该怎么 *** 作呢?

一、正确输入身份z号码。


目的:在单元格中正确的输入身份z号码。


方法:首先输入“’”(单撇号),紧接着输入身份z号码。


解读:1、Excel最长能够保存的数字为15位,而身份z号码为18位,所以默认情况下输入身份z号码后后三位数被替换为0。


2、除了在号码前添加“’”(单撇号)外,还可以提前将单元格的格式设置为“文本”。




二、从身份z号码中提取出生年月。


1、公式法。


方法:在目标单元格中输入公式:=TEXT(MID(C3,7,8),”00-00-00″)。


解读:1、分析身份z号码,发现从第7位开始长度为8的字符串为“出生年月”。


所以需要将其从身份z号码中提取出来。


2、Mid函数的作用为:返回文本字符串中从指定位置开始长度为指定值的字符。


语法结构为:=Mid(字符串,开始位置,字符长度)。


如=MID(C3,7,8)返回的结果为“19650821”。


3、如果仅用Mid函数提取身份z号码中的8为数字,其并不是“出生年月”,因为出生年月是“年月日”的形式,所以需要对其进行格式设置,而Text函数的作用为根据指定的代码对指定的值进行格式设置,语法结构为=Text(字符串,格式代码),其中“00-00-00”为日期格式代码。



2、快捷键法。


方法:1、在第一个目标单元格中输入第一个人出生年月的8位数字。


2、选取目标单元格,包括第一个输入内容的单元格,快捷键Ctrl+E。


3、【数据】-【分列】-【下一步】-【下一步】,选择【列数据格式】中的【日期(YMD)】并【完成】。


解读:如果不对智能填充的值【分列】,则仅仅为8为数字,并不是“出生年月”。




三、根据身份z号码计算性别。


方法:在目标单元格中输入公式:=IF(MOD(MID(C3,17,1),2),”男”,”女”)。


解读:1、分析身份z号码不难发现,性别隐藏在第17位,如果为“奇数”,则为“男”,否则为“女”。


2、Mod函数的作用为计算两个数字相除的余数,语法结构为:=Mod(被除数,除数)。


如=Mod(5,2)的返回结果为1。


3、公式=IF(MOD(MID(C3,17,1),2),”男”,”女”)中首先用Mid函数提取身份z号码的第17位,然后将返回的值作为Mod函数的被除数,除数为2,并将Mod函数的计算结果作为IF函数的判断条件,如果条件成立,则返回“男”,否则返回“女”。




四、根据身份z号码计算年龄。


方法:在目标单元格中输入公式:=DATEDIF(D3,TODAY(),”y”)。


解读:1、Datedif函数为系统隐藏函数,其功能为按照指定的计算方式计算两个日期之间的差值。


语法结构为:=Datedif(开始日期,结束日期,统计方式)。


常用的统计方式有“Y”、“M”、“D”,分别为“年”、“月”、“日”。


2、日常生活中,问“多少岁了”指的是从出生日期到今天经过了多少年。


所以结束日期用Today()函数获取,只要你打开表格,其年龄时自动更新的,而不是不定不变的。


如果你的年龄要按“月”为单位统计,则只需将公式中的“y”替换为“m”即可。


3、如果给定的表单中没有“出生年月”列,此时就先要从身份z号码中提取出生年月,然后再计算年龄,此时的公式为:=DATEDIF(TEXT(MID(C3,7,8),”00-00-00″),TODAY(),”y”),一步到位。




五、利用身份z号码计算退休年龄。


(以男60岁、女50岁退休为例)方法:在目标单元格中输入公式:=EDATE(D3,MOD(MID(C3,17,1),2)*120+600)。


解读:1、Edate函数的作用为:返回指定日期之后数月的日期,语法结构为:=Edate(开始日期,月份)。


如=Edate(“2020/4/19”,12)的返回结果为:2021/4/19。


2、公式=EDATE(D3,MOD(MID(C3,17,1),2)*120+600)中,首先判断其性别,如果为男性,则在D3的基础上+1*120+600个月,如果为女性,则在D3的基础上+0*120+600个月。


3、如果给定的表单中没有“出生年月”列,此时就先要从身份z号码中提取出生年月,然后再计算退休年龄,此时的公式为:=EDATE(TEXT(MID(C3,7,8),”00-00-00″),MOD(MID(C3,17,1),2)*120+600)。


4、如果按照“男60岁,女55岁”计算,则公式为:=EDATE(D3,MOD(MID(C3,17,1),2)*60+660)。




六、判断身份z号码是否重复。


1、常规 *** 作(错误方法)。


方法:在目标单元格中输入公式:=IF(COUNTIF(C$3:C$9,C3)>1,”重复”,””)。


解读:公式中用Countif函数统计当前值在指定范围内的个数,如果>1,返回“重复”……其实思路没有任何问题,但重点在于Excel中的数值精度,目前只支持15位,15位以后的值全部按照0来对待,所以统计出的结果为“重复”。



2、正确做法。


在目标单元格中输入公式:=IF(COUNTIF(C$3:C$9,C3&”*”)>1,”重复”,””)。


解读:和上述的公式相比较,只是在C3后添加了“&”*””,但结果截然不同,Why?其实很简单,就是加上通配符“*”之后,原来的数值变为了文本。




七、禁止录入重复的身份z号码。


方法:1、选定目标单元格。


2、【数据】-【数据验证】,选择【允许】中的【自定义】,在【公式】中输入:=COUNTIF(C:C,C3&“*”)=1。


3、单击【出错警告】标签,录入警告信息并【确定】。




八、根据身份z号码查询引用。


方法:在目标单元格中输入公式:=VLOOKUP(G3,C3:D9,2,0)。


解读:1、Vlookup函数为常见的查询引用函数之一,其语法结构为:=Vlookup(查询值,数据范围,返回列数,匹配模式)。


当匹配模式为“0”时为精准匹配,为“1”时为模糊匹配。


2、由于每一个人的身份z号码是唯一的,所在身份z号码就是“索引值”,代表唯一的数值,结合Vlookup或Lookup等获取其他信息。



结束语:从文中可以看出,身份z号码中隐藏着很多信息,除了车身年月、性别外,还可以计算年龄、退休年龄、作为“索引值”等……对于使用技巧,你Get到了吗?如果亲有更多的关于身份z号码的应用,不妨在留言区留言讨论哦!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/645322.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-17
下一篇 2022-04-17

发表评论

登录后才能评论

评论列表(0条)

保存