Excel罕见高招:[5]验证身份证号码校验码真伪

我们知道第二代身份证号码最后一位,是校验码。本系列最后一篇文章,分享给大家校验码的生成公式,以及如何通过Excel,自动判断校验码的真伪,从而间接判断身份证号码的真假。

分步得到身份证号码的校验码

  • 01

    开始之前,我们了解一下二代身份证号码中校验码生成过程中,所使用的算法原理。 算法: 1、身份证号码的前17位号码,各位号码分别乘以不同的权重,然后得到加权的和。 2、将加权和,取模11的余数(加权和除以11,得到余数) 3、根据余数,检索对应表 4、得到校验码。

  • 02

    例如,身份证号码:420181199510040436 1、前17位号码:4,2,0,1,8,1,1,9,9,5,1,0,0,4,0,4,3 分别乘以不同的权重7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2 然后得到加权的和248。 2、将加权和,取模11的余数6 3、根据余数,检索对应表 4、得到校验码6。 该校验码确实等于该身份证号码的最后一位是6

  • 03

    我们来看看用Excel公式如何计算校验码。 首先,我们使用数组公式,来计算加权和。 在单元格C2输入数组公式 =SUMPRODUCT(VALUE(MID($A2,ROW($1:$17),1)),B$2:B$18) 注意, 1、输完公式后,用同时按下Ctrl+Shift+Enter,才能被Excel识别为数组公式。 2、可以看出Excel中数组公式显示为,一对大括号括住(但输入时不需要输入这对大括号)的公式

  • 04

    接下来,在单元格D2中,取加权后除以11后(模11)的余数。 取余数可以直接使用Excel中的函数MOD。 为了不依赖于上一步得到的值,我们在公式中不使用单元格引用,而是直接使用数组公式(同时按下快捷键Ctrl+Shift+Enter) =MOD(SUMPRODUCT(VALUE(MID($A2,ROW($1:$17),1)),B$2:B$18),11)

  • 05

    得到余数后,我们通过Excel中查询函数VLOOKUP,来查询相应的校验码。 同样,在单元格E2直接使用数组公式(同时按下快捷键Ctrl+Shift+Enter) =VLOOKUP(MOD(SUMPRODUCT(VALUE(MID($A2,ROW($1:$17),1)),B$2:B$18),11),H:I,2,FALSE)

    直接得到身份证号码的校验码(集成公式)

    • 01

      为了保持Excel的简洁高效,我们希望化简一下公式,能够直接快速得到身份证号码的校验码。 不仅如此,要求还要更严格一点: 不在原表建立权重表,及校验码对应表。 也不使用数组公式。 方法: 直接在单元格B2,输入普通公式: =CHOOSE(MOD(SUM((MID(A2,1,1)+MID(A2,11,1))*7+(MID(A2,2,1)+MID(A2,12,1))*9+(MID(A2,3,1)+MID(A2,13,1))*10+(MID(A2,4,1)+MID(A2,14,1))*5+(MID(A2,5,1)+MID(A2,15,1))*8+(MID(A2,6,1)+MID(A2,16,1))*4+(MID(A2,7,1)+MID(A2,17,1))*2+MID(A2,8,1)+MID(A2,9,1)*6+MID(A2,10,1)*3),11)+1,1,0,"X",9,8,7,6,5,4,3,2) 然后往下拉,即可迅速计算剩下的身份证号码的校验码。

      使用校验码验证身份证号码的真伪

      • 01

        最后,我们将上面的校验码公式,集成一下,放到最终的身份证号码验证表格中。 如果公式计算的校验码,与身份证号码的实际最后1位号码相同,则验证通过,否则为假。 注意,一代身份证,只有15位,无校验码,所以不可校验。

      (0)

      相关推荐

      • [javascript技术]JavaScript身份证号码校验

        操作方法 01 <html> <head> <meta http-equiv="Content-Type" content="text/ht ...

      • 在Excel表格中如何输入身份证号码?

        在很多时候我们在Excel中制表的过程中会发现,身份证号码无法正常输入,常常造成很大的困扰.那么那么在Excel表格中如何输入身份证号码?下面小编就为大家详细介绍一下,来看看吧! 步骤 1.新建一个e ...

      • 在excel表格中怎么从身份证号码中提取生日?

        一个老掉牙的问题:在excel表格中怎么从身份证号码中提取生日?下面小编就为大家详细介绍一下,来看看吧! 方法1 1.当然,今天YMS不会教你写公式,要不又有同学说我应付差使了.有更快更好的方法?必须 ...

      • Excel表格中如何输入身份证号码并完整显示出来?

        在默认情况下Excel输入身份证号是显示不完整的,会显示一堆乱码字符串,这到底是怎么回事呢,其实可以在输入数值前,在前面加一个撇号,或者把单元格设置为文本格式.下面我们来看看吧! 方法/步骤 首先,打 ...

      • excel表格中重复的身份证号码如何筛选

        我们在用Excel表格输入大量身份证号码的时候,最怕的就是输入重复了吧.今天就跟大家介绍一下excel表格中重复的身份证号码如何筛选的具体操作步骤.1. 首先打开我们的Excel表格,然后将身份证号码 ...

      • 在EXCEL电子表格中如何输入身份证号码

        今天小编要和大家分享的是在EXCEL电子表格中如何输入身份证号码,希望能够帮助到大家. 操作方法 01 首先在我们的电脑桌面上新建一个excel表格并点击它,如下图所示. 02 然后输入带有身份证号码 ...

      • 如何在Excel表格中正确输入身份证号码

        在很多时候我们在Excel中制表的过程中会发现,往往有一些数据输入到单元格里面的时候就变了,比如:Excel输入01,在单元格中只会显示一个“1”了,前面的“0”莫名其妙的不见了,这个问题Word联盟 ...

      • Excel表格中正常输入身份证号码

        在很多时候我们在Excel中制表的过程中会发现,往往有一些数据输入到单元格里面的时候就变了,比如:Excel输入01,在单元格中只会显示一个“1”了,前面的“0”莫名其妙的不见了,这个问题Word联盟 ...

      • Excel表格中如何根据身份证号码填充性别?

        让你根据身份证号码进行性别填充,你会怎么做呢? 操作方法 01 每个人的身份证号码的后四位都是不同的,你知道他们分别代表什么意思吗?小编今天知道了身份证号码倒数第二位是代表性别,倒数第二位为奇数的是男 ...