使用Excel的函数批量判断身份证号码是否有效

一、描述

现在有一个批量上传用户的需求,其中需要上传用户名、姓名和身份证号码,进行实名批量注册,如何能快速判断用户给的身份证号是否格式正确呢?其实无论是WPS的excel还是Microsoft office中的excel都提供了函数功能,我们只要在单元中调用一定的函数就可以判断该身份证是否符合要求,如果符合,就输出Right,错误就输出Wrong.

二、源代码

=IF(LOOKUP((LEFT(C2,1)*7+MID(C2,2,1)*9+MID(C2,3,1)*10+MID(C2,4,1)*5+MID(C2,5,1)*8+MID(C2,6,1)*4+MID(C2,7,1)*2+MID(C2,8,1)+MID(C2,9,1)*6+MID(C2,10,1)*3+MID(C2,11,1)*7+MID(C2,12,1)*9+MID(C2,13,1)*10+MID(C2,14,1)*5+MID(C2,15,1)*8+MID(C2,16,1)*4+MID(C2,17,1)*2)-ROUNDDOWN((LEFT(C2,1)*7+MID(C2,2,1)*9+MID(C2,3,1)*10+MID(C2,4,1)*5+MID(C2,5,1)*8+MID(C2,6,1)*4+MID(C2,7,1)*2+MID(C2,8,1)+MID(C2,9,1)*6+MID(C2,10,1)*3+MID(C2,11,1)*7+MID(C2,12,1)*9+MID(C2,13,1)*10+MID(C2,14,1)*5+MID(C2,15,1)*8+MID(C2,16,1)*4+MID(C2,17,1)*2)/11,0)*11,{0,1,2,3,4,5,6,7,8,9,10},{"1","0","x","9","8","7","6","5","4","3","2"})=RIGHT(C2,1),"Right","Wrong")

以上默认是身份证号码在C2单元格,我在D2单元格输入以上代码,如果的你身份证号码不在C2单元格,那就用将该代码放在记事本中,用查找和替换,将代码中的所有C2替换为你的第一个身份证所在单元格。

三、效果展示

1、我的第一个身份证号码在C2,我在D2单元格输入了以上代码如下图操作

2、在D2单元格中输入代码后,左上角会出现一个执行的操作按钮,如图箭头方向的绿色打钩按钮,输出结果为Right

3、然后点击D2单元格的右下角的绿色正方形(下拉填充柄的自动填充功能),往下拖就能批量将C列单元格中的身份证号进行判断,如下图红色箭头方向的按钮,点住小正方形往下拖

四、总结

1、根据自己的身份证所在单元格将函数中的C1替换为自己的单元格序号

2、在自己想放置校验结果的单元格输入以上函数

3、利用下拉填充柄,自动填充

时间: 2024-10-15 10:08:08

使用Excel的函数批量判断身份证号码是否有效的相关文章

在Excel中,已知身份证号码,如何批量计算其实际年龄?

昨天,上司问我:..,你会在Excel中计算年龄吗?当时,一下促住了.说真的,还真不会.今天研究了一下,写下来,方便日后查看. 首先,得有一张已知姓名和相应身份证号的原表吧. 在这张表上再加上三列:出生年份.现在年份.年龄 现在年份当然是2017啦,这个很好解决.那么出生年份呢?可以很清楚的知道,在身份证上,从第7位开始之后4位是出生年份,所以来第一个函数:=MID(B2,7,4) 可以得到: 下拉一下,所有的出身年份就都出来了 现在计算年龄,来一个很简单的公式:=D2-C2 enter后下拉一

JavaScript判断身份证号码是否合法

function ChinaIdChecker(id) { this.isOK = false; this.error = ''; if (!id || typeof (id) != 'string' || id.length != 15 && id.length != 18 || !id.match(/^[0-9]{15}$/) && !id.match(/^[0-9]{17}[0-9xX]$/) || "111111111111111" == id)

身份证号码验证正则表达式及用法(包括:位数、规则等)

//sfz.js页面function CheckIDCard(StrNumber) { //判断身份证号码格式函数 //公民身份号码是特征组合码, //排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码 //身份证号码长度判断 if(StrNumber.length<15||StrNumber.length==16||StrNumber.length==17||StrNumber.length>18) { return {"code"

在sql server中使用存储过程验证身份证号码是否合法

在一些人员信息收录的系统中,可能会要求填入人员的身份证号码,但要怎么来验证填入的身份证号码的格式是否合法呢.我们将验证的sql写成一个存储过程,以方便重复调用. 首先我们要清楚我国身份号码的组成规则:1,18位身份证号码的组成:6位地区编码+8位出生年月日+3位编号(奇数代表男,偶数代表女)+1位校验码2,15位身份证号码的组成:6位地区编码+6位出生年月日+3位编号(奇数代表男,偶数代表女) 下面是该存储过程的所有sql -- =================================

身份证号码18个数字代表的意思

一.前言介绍 中华人民共和国公民身份号码是中华人民共和国为中国大陆每个公民从出生之日起编定的唯一的.终身不变的身份代码,在中华人民共和国公民办理涉及政治.经济.社会生活等权益事务方面广泛使用.中华人民共和国公安部负责公民身份号码的编制和组织实施工作. 1999年8月26日中华人民共和国国务院发布<国务院关于实行公民身份号码制度的决定>(国发[1999]15号),这个文件规定自1999年10月1日起在全国建立和实行公民身份号码制度. 二.数字组成方式 1.地址码(身份证号码前六位) 表示编码对象

php验证身份证号码的正确性

/********************php验证身份证号码是否正确函数*********************/function is_idcard( $id ) {   $id = strtoupper($id);   $regx = "/(^\d{15}$)|(^\d{17}([0-9]|X)$)/";   $arr_split = array();   if(!preg_match($regx, $id))   {     return FALSE;   }   if(15

java验证身份证号码是否有效源代码

1.描述 用java语言判断身份证号码是否有效,地区码.出身年月.校验码等验证算法 2.源代码 package test; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.GregorianCalendar; import java.util.Hashtable; import java.util.Scanner; imp

java验证身份证号码是否有效源代码 wn25的头像 wn25 23 2015-01-04 20:09 6 基本信息 Java &#215; 1 浏览

原文:http://www.open-open.com/code/view/1420373343171 1.描述 用java语言判断身份证号码是否有效,地区码.出身年月.校验码等验证算法 2.源代码 package test; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.GregorianCalendar; impor

【HR必看】Excel中对身份证号码的处理技巧

[HR必看]Excel中对身份证号码的处理技巧 身份证号码的处理是HR部门经常遇到的问题,我给几个地方的企业培训时发现,相当一部分人员基本还是手动对身份证号码进行处理,效率可想而知啦!下面,刘老师为大家深入讲解Excel中,与身份证号码处理相关的方方面面. 一.录入技巧 1.手动输入问题与解决方法 问题:在Excel中输入身份证号码时,发现输入后变成了科学计数格式,如图: 使用单引号" ' "强制转成文本类型,发现后三位竟然全变成了0. 咋办呢? 原因:Excel中输入大于11位数字时