EX CEL 中从身份证号码提取出生日期的方法 由于工作需要,我需要单位人员的出生年月,单独一个一个输入?NO~太麻烦了。我的工资程序里有人员信息,而且有每个人的身份证号码,所以我就想出了利用excel 来完成这个工作。 PS,我是用office2003 的excel 完成这个操作的,office2000 可能有些操作有些不同,不妨试一下。 首先先要说几个公式,明白了这几个公式后,就能简单完成了。 ①函数【left】 作用:提取数据左边 n 个数字的内容 默认公式:=left(text, [num_chars]) 翻译公式:=left(数据,n[数字]) 举例:=left("Hello",2) 输出结果为最开始的2 个字母“He” ②函数【right】 作用:提取数据右边 n 个数字的内容 默认公式:=right(text, [num_chars]) 翻译公式:=right(数据,n[数字]) 举例:=right("Hello",2) 输出结果为最末尾的2 个字母“lo” 好了,利用这两个公式,就可以做到简单的提取一个身份证号码中的日期了。 举例,某人身份证为 310123190102039527(18 位),输入到"A1"单元格,建议用把单元格改成"文本",不然会显示为科学计数法。 【单元格改成文本的方法:鼠标右击"A1"单元格,选择“设置单元格格式(F)...”,在“单元格格式”对话框中,选择“数字”标签,“分类(C)”里选择“文本”,点“确定”】 那用公式套用的话,先用left 吧,最后4 位是不要的,所以提取左边 14 位。这个身份证号码已经输入到"A1"单元格,那么在"B1"单元格可以这样输入:=left(A1,14),那出现的结果就是“31012319010203”,然后你可以用right 命令提取"B2"单元格里后8 位数字,就可以提取出生日代码了。比如我们在"C1"单元格里输入=right(B1,8),出现的结果就是“19010203”,基本工程完成了。 接下来是进阶教程,其实,完全可以把2 个命令合并使用,比如,我们在"D1"单元格里这样输入:=right(left(A1,14),8),看看结果如何?是不是直接出现了正确结果? 其实,如果left 和right 两个命令同时用到,可以用一个更好的命令【mid】来代替,接下来我来说一下mid 的用法: ③函数【mid】 作用:提取数据,从左边起第 n 个数字开始,长度为 m 的内容 默认公式:=mid(text, start_num, num_chars) 翻译公式:=mid(数据,n[开始第 n 位],m[长度]) 举例:=mid("Hello",2,3) 输出结果为从第二位开始,长度为 3 的字母“ell” 那样,刚刚复杂的left 和right 嵌套,可以在"E1"单元格输入公式=mi...