用EXCEL提取身份证号码中的生日

上传人:大米 文档编号:507375493 上传时间:2023-08-02 格式:DOC 页数:9 大小:114.50KB
返回 下载 相关 举报
用EXCEL提取身份证号码中的生日_第1页
第1页 / 共9页
用EXCEL提取身份证号码中的生日_第2页
第2页 / 共9页
用EXCEL提取身份证号码中的生日_第3页
第3页 / 共9页
用EXCEL提取身份证号码中的生日_第4页
第4页 / 共9页
用EXCEL提取身份证号码中的生日_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《用EXCEL提取身份证号码中的生日》由会员分享,可在线阅读,更多相关《用EXCEL提取身份证号码中的生日(9页珍藏版)》请在金锄头文库上搜索。

1、用EXCEL提取身份证号码中的生日、性别,自动计算工龄默认分类 2010-03-27 12:03:25 阅读2703 评论0 字号:大中小订阅 自动录入出生日期1)函数分解CONCATENATE函数将几个文本字符串合并为一个文本字符串。语法:CONCATENATE(text1,text2,.)Text1,text2,.为130个要合并成单个文本项的文本项。文本项可以为文本字符串、数字或对单个单元格的引用。(2)实例分析与上面的思路相同,我们可以在E2单元格中输入公式“=IF(LEN(C2)=15,CONCATENATE(19,MID(C2,7,2),年,MID(C2,9,2),月,MID(C2

2、,11,2),日),CONCCTENCTE(MID(C2,7,4),年,MID(C2,11,2),月,MID(C2,13,2),日)”。其中“LEN(C2)=15”仍然作为逻辑判断语句使用,它可以判断身份证号码是15位的还是18位的,从而调用相应的计算语句。对15位的身份证号码来说,左起第7至12个字符表示出生年、月、日,此时可以使用MID函数从身份证号码的特定位置,分别提取出生年、月、日。然后用CONCATENATE函数将提取出来的文字合并起来,就能得到对应的出生年月日。公式中“19”是针对早期身份证号码中存在2000年问题设计的,它可以在计算出来的出生年份前加上“19”。对“18”位的身份

3、证号码的计算思路相同,只是它不存在2000年问题,公式中不用给计算出来的出生年份前加上“19”。注意:CONCATENATE函数和MID函数的操作对象均为文本,所以存放身份证号码的单元格必须事先设为文本格式,然后再输入身份证号。自动计算工龄1.首先把Word中的客户档案全部复制到Excel中生成一个数据库文件。然后在数据库文件中新建一列,并命名为“出生年月”。因为身份证号有15位和18位,为了计算方便,先对身份证号进行排序。2.用MID函数计算出第一个客户的出生年月。函数表达方式如下:MID(E2,7,2),表示第一个客户的身份证号在E列第二行中,要从这个位置中的第7个文本始返回2个长度的字符

4、。回车确认后,“J2”中的值变为“62”,表示该职工62年出生。接着下拉J2公式复制单元格,快速求出每个职工的出生年月(若身份证为18位,则公式变为MID(E2,9,2)再把J列的格式改为数值型。3.在D2中输入计算机公式“=103-J2”就可求出该职工的实际年龄。下拉D2中的公式再次复制,近千个职工的年龄就一键敲定。注:以上的方法中的出生年月只有在2000年以前才有效,如果客户中有2000年以后出生的人,则计算时还要做些变通。补充所谓文本函数,就是可以在公式中处理文字串的函数。例如,可以改变大小写或确定文字串的长度;可以替换某些字符或者去除某些字符等。而日期和时间函数则可以在公式中分析和处理

5、日期值和时间值。关于这两类函数的列表参看附表,这里仅对一些常用的函数做简要介绍。一、文本函数(一)大小写转换LOWER-将一个文字串中的所有大写字母转换为小写字母。UPPER-将文本转换成大写形式。PROPER-将文字串的首字母及任何非字母字符之后的首字母转换成大写。将其余的字母转换成小写。这三种函数的基本语法形式均为 函数名(text)。示例说明:已有字符串为:pLease ComE Here! 可以看到由于输入的不规范,这句话大小写乱用了。通过以上三个函数可以将文本转换显示样式,使得文本变得规范。参见图1Lower(pLease ComE Here!)= please come here!

6、upper(pLease ComE Here!)= PLEASE COME HERE!proper(pLease ComE Here!)= Please Come Here!图1(二)取出字符串中的部分字符Excel函数应用回顾 Excel函数应用之逻辑函数 Excel函数应用之数学和三角函数 Excel函数应用之函数简介您可以使用Mid、Left、Right等函数从长字符串内获取一部分字符。具体语法格式为LEFT函数:LEFT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定要由 LEFT 所提取的字符数。MID函数:MID(text,start_n

7、um,num_chars)其中Text是包含要提取字符的文本串。Start_num是文本中要提取的第一个字符的位置。RIGHT函数:RIGHT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定希望 RIGHT 提取的字符数。比如,从字符串This is an apple.分别取出字符This、apple、is的具体函数写法为。LEFT(This is an apple,4)=ThisRIGHT(This is an apple,5)=appleMID(This is an apple,6,2)=is图2(三)去除字符串的空白在字符串形态中,空白也是一个

8、有效的字符,但是如果字符串中出现空白字符时,容易在判断或对比数据是发生错误,在Excel中您可以使用Trim函数清除字符串中的空白。语法形式为:TRIM(text)其中Text为需要清除其中空格的文本。需要注意的是,Trim函数不会清除单词之间的单个空格,如果连这部分空格都需清除的话,建议使用替换功能。比如,从字符串My name is Mary中清除空格的函数写法为:TRIM(My name is Mary)=My name is Mary 参见图3图3(四)字符串的比较在数据表中经常会比对不同的字符串,此时您可以使用EXACT函数来比较两个字符串是否相同。该函数测试两个字符串是否完全相同。

9、如果它们完全相同,则返回 TRUE;否则,返回 FALSE。函数 EXACT 能区分大小写,但忽略格式上的差异。利用函数 EXACT 可以测试输入文档内的文字。语法形式为:EXACT(text1,text2)Text1为待比较的第一个字符串。Text2为待比较的第二个字符串。举例说明:参见图4EXACT(China,china)=False图4二、日期与时间函数在数据表的处理过程中,日期与时间的函数是相当重要的处理依据。而Excel在这方面也提供了相当丰富的函数供大家使用。(一)取出当前系统时间/日期信息用于取出当前系统时间/日期信息的函数主要有NOW、TODAY。语法形式均为 函数名()。(

10、二)取得日期/时间的部分字段值如果需要单独的年份、月份、日数或小时的数据时,可以使用HOUR、DAY、MONTH、YEAR函数直接从日期/时间中取出需要的数据。具体示例参看图5。比如,需要返回2001-5-30 12:30 PM的年份、月份、日数及小时数,可以分别采用相应函数实现。YEAR(E5)=2001MONTH(E5)=5DAY(E5)=30HOUR(E5)=12图5此外还有更多有用的日期/时间函数,可以查阅附表。下面我们将以一个具体的示例来说明Excel的文本函数与日期函数的用途。三、示例:做一个美观简洁的人事资料分析表1、 示例说明在如图6所示的某公司人事资料表中,除了编号、员工姓名

11、、身份证号码以及参加工作时间为手工添入外,其余各项均为用函数计算所得。图6在此例中我们将详细说明如何通过函数求出:(1)自动从身份证号码中提取出生年月、性别信息。(2)自动从参加工作时间中提取工龄信息。2、身份证号码相关知识在了解如何实现自动从身份证号码中提取出生年月、性别信息之前,首先需要了解身份证号码所代表的含义。我们知道,当今的身份证号码有15/18位之分。早期签发的身份证号码是15位的,现在签发的身份证由于年份的扩展(由两位变为四位)和末尾加了效验码,就成了18位。这两种身份证号码将在相当长的一段时期内共存。两种身份证号码的含义如下:(1)15位的身份证号码:16位为地区代码,78位为

12、出生年份(2位),910位为出生月份,1112位为出生日期,第1315位为顺序号,并能够判断性别,奇数为男,偶数为女。(2)18位的身份证号码:16位为地区代码,710位为出生年份(4位),1112位为出生月份,1314位为出生日期,第1517位为顺序号,并能够判断性别,奇数为男,偶数为女。18位为效验位。3、 应用函数在此例中为了实现数据的自动提取,应用了如下几个Excel函数。(1)IF函数:根据逻辑表达式测试的结果,返回相应的值。IF函数允许嵌套。语法形式为:IF(logical_test, value_if_true,value_if_false)(2)CONCATENATE:将若干个

13、文字项合并至一个文字项中。语法形式为:CONCATENATE(text1,text2)(3)MID:从文本字符串中指定的起始位置起,返回指定长度的字符。语法形式为:MID(text,start_num,num_chars)(4)TODAY:返回计算机系统内部的当前日期。语法形式为:TODAY()(5)DATEDIF:计算两个日期之间的天数、月数或年数。语法形式为:DATEDIF(start_date,end_date,unit)(6)VALUE:将代表数字的文字串转换成数字。语法形式为:VALUE(text)(7)RIGHT:根据所指定的字符数返回文本串中最后一个或多个字符。语法形式为:RIG

14、HT(text,num_chars)(8)INT:返回实数舍入后的整数值。语法形式为:INT(number)4、 公式写法及解释(以员工Andy为例说明)说明:为避免公式中过多的嵌套,这里的身份证号码限定为15位的。如果您看懂了公式的话,可以进行简单的修改即可适用于18位的身份证号码,甚至可适用于15、18两者并存的情况。(1)根据身份证号码求性别=IF(VALUE(RIGHT(E4,3)/2=INT(VALUE(RIGHT(E4,3)/2),女,男)公式解释:a. RIGHT(E4,3)用于求出身份证号码中代表性别的数字,实际求得的为代表数字的字符串b. VALUE(RIGHT(E4,3)用

15、于将上一步所得的代表数字的字符串转换为数字c. VALUE(RIGHT(E4,3)/2=INT(VALUE(RIGHT(E4,3)/2用于判断这个身份证号码是奇数还是偶数,当然你也可以用Mod函数来做出判断。d. =IF(VALUE(RIGHT(E4,3)/2=INT(VALUE(RIGHT(E4,3)/2),女,男)及如果上述公式判断出这个号码是偶数时,显示女,否则,这个号码是奇数的话,则返回男。(2)根据身份证号码求出生日期=CONCATENATE(19,MID(E4,7,2),/,MID(E4,9,2),/,MID(E4,11,2)公式解释:a. MID(E4,7,2)为在身份证号码中获取表示年份的数字的字符串b. MID(E4,9,2) 为在身份证号码中获取表示月份的数字的字符串c. MID(E4,11,2) 为在身份证号码中获取表示日期的数字的字符串d. CONCATENATE(19,MID(E4,7,2),/,MID(E4,9,2),/,MID(E4,11,2)目的就是将多个字符

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题 > 初中试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号