继续学习《Excel 2003函数应用完全手册》第四章,函数应用案例,今天看信息统计的第二部分。
使用Excel 管理人事信息,具有无须编程、简便易行的特点。假设有一个人事管理工作表,它的A1、B1、C1、D1、E1、F1、G1 和H1 单元格分别输入“序号”、“姓名”、“身份证号码”、“性别”、“出生年月”等。自第2 行开始依次输入职工的人事信息。为了尽可能减少数据录入的工作量,下面利用Excel 函数实现数据统计的自动化。
2 出生日期输入
2.1 函数分解
CONCATENATE 函数将几个文本字符串合并为一个文本字符串。
语法:CONCATENATE(text1,text2,...)
Text1,text2,...为1~30 个要合并成单个文本项的文本项。文本项可以为文本字符串、数字或对单个单元格的引用。
2.2 实例分析
与上面的思路相同,我们可以在E2 单元格中输入公式“=IF(LEN(C2)=15,CONCATENATE("19",MID(C2,7,2),"年",MID(C2,9,2),"月",MID(C2,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”位的身份证号码的计算思路相同,只是它不存在2000 年问题,公式中不用给计算出来的出生年份前加上“19”。
注意:CONCATENATE 函数和MID 函数的操作对象均为文本,所以存放身份证号码的单元格必须事先设为文本格式,然后再输入身份证号。
小结
本部分主要介绍了用CONCATENATE 函数来从身份证号码中提取出生日期。