大家好,前几篇文章,我们介绍了自己用excel做人事管理系统的基础架构部分,今天我们继续介绍基础架构部分的身份证中出生年月的自动提取、年龄的自动计算。
先给大家看看效果,我们输入身份证号码后,自动根据身份证号码提取出出生日期和时间。(图1)
图1
下面我们来详细讲一下,首先让我们看看提取出生日期的公式:
=IF(J3="","",VALUE(MID(J3,7,4)&"/"&MID(J3,11,2)&"/"&MID(J3,13,2)))
公式中的IF函数我们上篇文章已经讲过了,这里我们就不多赘述了,我们主要讲一下这个公式中的MID函数,大家先看看这个函数的说明:
MID(需要处理的文本, 开始字符串, 第几位开始,截取长度)
大家看公式中,分别出现了三次MID函数
第一个MID函数是截取身份证字符串中的第七位开始,截取长度为4个字符,就是年,1988
第二个MID函数是截取身份证字符串中的第十一位开始,截取长度为2个字符,就是月,09
第三个MID函数是截取身份证字符串中的第十三位开始,截取长度为2个字符,就是日,09
这三个MID函数用&"/"链接起来,就可以组合成“1988/09/09”这个日期,&符号的作用是拼接前后的字符串。
最后,我们在这三个MID函数的外围加上value函数,将字符串转换为数值,然后将单元格格式设置为想要的日期类型,就完成了(图2)
图2
接下来我们来看看年龄的自动计算,首先我们还是来看看公式:
=IF(J3="","",YEAR(TODAY())-MID(J3,7,4))
这个公式所用到的函数我们都介绍过了,这里就简单地说一下,YEAR(TODAY())表示获取今天的年份,也就是2021年,然后再减去MID(J3,7,4)获取到的身份证中的年份1988,就可以得到年龄为33岁。
怎么样,是不是很简单呢,MID函数也可以用在很多场合,比如解析产品编码,解析工号等等有意义的字符串,都可以用MID来依次分解解析,是不是很简单呢?
好了,今天就暂时给大家先介绍到这里,基础模块的构建我们已经给大家介绍完了,这几节课,给大家讲了很多知识点,希望大家能活学活用,举一反三
下次课开始给大家讲利用录入的基础数据的信息,怎么做合同到期提醒和生日提醒。
下图就是这个表格的成品(图3)。