用函数提高人员信息录入效率

数字办公

单位最近对人员信息进行统计,涉及编号、姓名、身份证号码、参加工作时间、工龄等内容(表格如图1所示),按传统方法录入的工作量很大,但通过函数可以大大降低工作量,很多须录入的信息可以“算”出来。下面就将实现过程与大家共享。我们知道,当今的身份证号码有15、18位之分,以前签发的身份证号码是15位的,现在签发的身份证号码在原来的基础上扩展了年份(由两位变为四位)并在末尾加了郊验位,如以前的身份证号码:

26-27-f12-2.jpg
图1

320625650316488,现在就变成:320625196503164886。

身份证号码中包含的含义:

(1)15位的身份证号码:1~6位为地区代码,7~8位为出生年份(2位),9~10位为出生月份,11~12位为出生日期,第13~15位为顺序号,这3位能够判断性别,奇数为男,偶数为女;

(2)18位的身份证号码:1~6位为地区代码,7~10位为出生年份(4位),11~12位为出生月份,13~14位为出生日期,第15~17位为顺序号,这3位能够判断性别,奇数为男,偶数为女,第18位为效验位。

以1号员工为例,介绍方法如下。

一 根据身份证号判断性别

=IF(LEN(E3)=15,IF(VALUE(RIGHT(E3,3))/2=INT(VALUE(RIGHT(E3,3))/2),"女","男"),IF(VALUE(MID(E3,15,3))/2=INT(VALUE(MID(E3,15,3))/2),"女","男"))

分析:条件:LEN(E3)=15

(1)如果身份证号码是15位的,执行:

IF(VALUE(RIGHT(E3,3))/2=INT(VALUE(RIGHT(E3,3))/2),"女","男")

RIGHT(E3,3)是从右边取3位,VALUE(RIGHT(E3,3)是将取到的3位转换成数字格式,VALUE(RIGHT(E3,3))/2=INT(VALUE(RIGHT(E3,3))/2是判断刚才取到的3位数是奇数还是偶数,如果是偶数的话,就显示结果“女”,否则就显示结果“男”。

(2)如果身份证号码是18位的,执行:

IF(VALUE(MID(E3,15,3))/2=INT(VALUE(MID(E3,15,3))/2),"女","男")

MID(E3,15,3)是从第15位开始取3位,VALUE(MID(E3,15,3))是取到的3位转换成数字格式,VALUE(MID(E3,15,3))/2=INT(VALUE(MID(E3,15,3))/2)是判断刚才取到的3位数是奇数还是偶数,如果是偶数的话,就显示结果“女”,否则就显示结果“男”。

二 从身份证号提取出生日期

=IF(LEN(E3)=15,CONCATENATE("19",MID(E3,7,2),"/",MID(E3,9,2),"/",MID(E3,11,2)),CONCATENATE(MID(E3,7,4),"/",MID(E3,11,2),"/",MID(E3,13,2)))

分析:CATENATE是合并函数。

(1)如果身份证号是15位的时候,执行:

CONCATENATE("19",MID(E3,7,2),"/",MID(E3,9,2),"/",MID(E3,11,2))

提取2位年份位,同时给年份前加“19”,构成完整的年、月、日。

(2)当身份号是18位的时候,执行:

CONCATENATE(MID(E3,7,4),"/",MID(E3,11,2),"/",MID(E3,13,2))

直接提取年、月、日。

三 根据参加工作时间提取工龄

=CONCATENATE(DATEDIF(G3,TODAY(),"y"),"年",DATEDIF(G3,TODAY(),"ym"),"个月")

分析:涉及到CONCATENATE和DATEDIF两个函数的应用,来提取工龄。

函数语法了解方法:

通过菜单:插入→函数,弹出一个“插入函数”的对话框,选择某个函数会有相应函数的语法格式和该函数的功能介绍(如图2所示)。

26-27-f12-6.jpg
图2

各位如果以后碰到大量信息录入的话,先分析考虑是不是数据之间有关系,一般都有关联的,通过函数公式来实现可以事半功倍,大大提高录入效率。