设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2624|回复: 0
打印 上一主题 下一主题

与身份证相关的一些函数

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2016-1-23 21:56:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Sue教你
花式提取
身份证中的信息


身份证号码的结构
第一代身份证号码为15位:第1-6位区域代码,可对应出生地;第7-12位为6位出生日期;第13-15位为顺序码;第15位奇数则为男性偶数则为女性
第二代身份证号码为18位:第1-6位区域代码,可对应出生地;第7-14位为8位出生日期;第15-17位为顺序码;第17位奇数则为男性偶数则为女性

2000年后的新身份证从地区码后插入两位年份为20,并多一位校验码,在第18位。

设:15/18位身份证号码存储在A2单元格,对应以下公式可提取相关信息:
以下公式均为考虑15位身份证号码通用

提取生日:
常规思路及优化:
=IF(LEN(A2)=18,TEXT(MID(A2,7,8),"0-00-00"),TEXT(19&MID(A2,7,6),"0-00-00"))
=TEXT(IF(LEN(A2)=18,MID(A2,7,8),19&MID(A2,7,6)),"0-00-00")
=TEXT(MID(A2,7,IF(LEN(A2)=18,8,6)),"0-00-00")
牛逼青年:
=TEXT(MID(A2,7,6+2*(LEN(A2)=18)),"0-00-00")
=TEXT(MID(A2,7,LEN(A2)/2.25),"0-00-00")

走你Style:
=TEXT(MID(A2,7,11)-500,"0-00-00,")

提取年龄:
=DATEDIF(TEXT(MID(A2,7,LEN(A2)/2.25),"0-00-00"),TODAY(),"y")
=DATEDIF(TEXT(MID(A2,7,11)-500,"0-00-00,"),TODAY(),"y")
这个就是生日公式,外套DateDif函数

提取性别:
=IF(MOD(MID(A2,15,3),2), "男","女")
=IF(ISODD(MID(A2,15,3)), "男","女")
=IF(ISEVEN(MID(A2,15,3)),"女", "男")
我就是不爱用IF:
=MID("女男",ISODD(MID(A2,15,3))+1,1)
=MID("女男",MOD(MID(A2,15,3),2)+1,1)





不一定回复的邮箱:
Leedongxu@live.com


长按二维码关注


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-19 14:07 , Processed in 0.082946 second(s), 24 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表