在用Excel录入个人信息的时候,经常会遇到身份证号码输错情况,有些身份证号码位数输多了,有些身份证号码位数输少,导致最后校对非常的麻烦。

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

Microsoft Office 2024 LTSC v16.0.17102 中文专业增强版(附安装教程+密钥) 32位/64位

  • 类型:办公软件
  • 大小:5.78GB
  • 语言:简体中文
  • 时间:2023-11-13

查看详情

遇到这种情况,如果信息量少,直接一个一个的重新核对一遍即可;如果遇到大量的数据,处理起来就非常麻烦,重新核对,不仅浪费大量时间,工作效率也很低。

小编就给大家分享两种方法,在输入身份证的时候如何验证身份证号码是不是18位,用检验的方式批量处理身份证号码的输入是否规范。

方法一:数据验证方式

选中要输入身份证号码的数据列,点击【数据】再点击【数据验证】在弹出框中分别设置如下数据:

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

设置好输入身份证号码的数据列之后,点击这一列中任意单元格时,会有提示信息。

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

当输入身份证号码时,如果输入的位数大于18位或者小于18位时,会弹出框,提示数据输入错误,只有输入位数等于18位时,才不会有弹框。

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

方法二:公式验证方式

选中要输入身份证号码的数据列,点击【开始】再点击【条件格式】再点击【新建规则】然后点击【使用公式确定要设置格式的单元格】在文本框中输入公式“=LEN(A1)<>18”,然后再点击【格式】设置文本样式。

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

公式的参数说明:

  • LEN:len是英文单词leng的缩写,意思是“长度”。
  • A1:表示要设置的数据列。(如:要设置B列,这里的参数就是B1)
  • 18:表示身份证的位数18位。(文本长度)

当输入身份证号码时,如果输入的位数大于18位或者小于18位时,单元格的内容是红色的(小编设置的文本样式是红色),只有输入位数等于18位时,才不会显示红色。

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

补充:

1、查找重复身份证号码:

=IF(COUNTIF(A:A,A2&”*”)>1,”重复”,””)

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

要点:

  • 在COUNTIF函数的第二参数后加上一个星号 &”*”。

COUNTIF函数在计算文本型数字时,会默认按数值型进行处理,但是Excel中的数字精度只有15位,并且身份证号码是18位,因此会把前15位相同的身份证全部识别为相同的内容。在第二参数后加上一个星号 &”*”,就是告诉Excel,要查找包含A2单元格内容的文本,通过这样变通的手段,COUTNIF函数就听话啦。

2、用出生年月来计算年龄:

=DATEDIF(A4,TODAY(),”y”)

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

要点:

  • DATEDIF函数用于计算两个日期之间的间隔。用法是:
  • =DATEDIF(开始日期,结束日期,指定要返回的类型)
  • 第三参数是Y,表示年,是M,就表示月。
  • TODAY函数返回系统当前的日期。
  • DATEDIF函数是隐藏函数,输入时没有屏幕提示,需要手工录入哦。

3、根据身份证号计算出生年月:

=–TEXT(MID(A2,7,8),”0!/00!/00″)

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

要点:

身份证号码中的第8位到15位是出生年月信息。
首先使用MID函数从A2单元格的第7位开始,提取出8个字符,得到类似 19840727的结果。
再使用TEXT函数将这个字符串变成日期样式的文本,得到类似1984/07/27的结果。
由于TEXT函数的结果是文本型的内容,所以加上两个小减号 — 就是计算负数的负数,通过四则运算,变成真正的日期序列。
公式也可以使用=–TEXT(MID(A2,7,8),”0-00-00″),原理是一样的。

4、根据身份证号码提取性别:

=IF(MOD(MID(A2,15,3),2),”男”,”女”)

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

要点:

  • 身份证号码中的第17位是性别信息,单数表示男,双数表示女。
  • 首先使用MID函数从A2单元格的第15位开始,提取出3个字符。
  • 再使用MOD函数计算这个字符与2相除的余数。
  • 最后使用IF函数判断,如果余数大于0,返回男,如果余数是0,则返回女。
  • 这里使用MID(A2,15,3),是为了兼容15位的旧身份证,这部分公式也可以使用MID(A2,17,1)。

5、根据身份证号计算退休时间:

=EDATE(TEXT(MID(A2,7,8),”0!/00!/00″),MOD(MID(A2,15,3),2)*120+600)

excel怎么检查身份证号是否18位? 验证身份证号码是否正确的技巧-编程知识网

要点:

  • 先用TEXT(MID(A2,7,8),”0!/00!/00″),计算出出生年月信息。
  • 再使用MOD(MID(A2,15,3),2)计算性别码和2相除的余数,结果是1或是0。
  • 如果性别码和2相除的余数是1,MOD(MID(A2,15,3),2)*120+600部分就相当于1*120+600,结果是720。
  • 否则就是0*120+600,结果是600。
  • EDATE函数返回一个日期经过指定月份后的日期,也就是以出生年月为准,男性要经过720个月(60年),女性要经过600个月(50年)就是退休年龄了

以上就是小编给大家分享的在Excel中使用条件格式检测身份证号码是否18位,自动检测是否合法,不用一个一个核对,大大提高工作效率,您学会了吗?