乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>excel</em>中怎么检查一列身份证号的有效性-excel 校验,Excel数据快速

<em>excel</em>中怎么检查一列身份证号的有效性-excel 校验,Excel数据快速

作者:乔山办公网日期:

返回目录:excel表格制作


处理方法:
选定单元格区域,点菜单“数据”——“有效性”,点“设置”标签,在“允许”中选择“自定义”,在后面“公式”中输入=and(len(a1)=18,countif(s:s,left(a1,6)))。点“出错警告”标签,点中“出错警告”,在“样式”中选“停止”,在“标题”中输入“你输入的身份证号有误!请重新输入!”。
说明:该办法只检查了输入的身份证位数是否为18位和地区编号是否正确,对顺序码和数字校验码的检查,因较复杂无法使用数据有效性进行,需要VBA或其他开发工具。

H2输入公式
=IF(AND(LEN(G2)=18,CHOOSE(MOD(SUMPRODUCT(MID(G2,ROW($1:$17),1)*2^(18-ROW($1:$17))),11)+1,1,0,"X",9,8,7,6,5,4,3,2)&""=RIGHT(G2)),"正确","错误")
下拉即可标记出来

===============
其实上面只是针对18位身份证的校验公式
如果既有15又有18位的话公式就长多了

=IF(LEN(A2)=18,IF(CHOOSE(MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*2^(18-ROW($1:$17))),11)+1,1,0,"X",9,8,7,6,5,4,3,2)&""=RIGHT(A2),"正确","错误"),IF(LEN(A2)=15,IF(CHOOSE(MOD(SUMPRODUCT(MID(A2,ROW($1:$14),1)*2^(15-ROW($1:$14))),11)+1,1,0,"X",9,8,7,6,5,4,3,2)&""=RIGHT(A2),"正确","错误"),"错误"))

兄弟我特别懒,只能帮到这里了。身份证zd有效性的设置规则可以有很多,我这里只是限定了位数要大于14位,其他的地域什么的你自己琢磨吧。比较复杂的。政府网站有提供Webservice接口,找IT人员给接通起来,这是最准确的。



1、这里有一个Excel文件,里面录入了一组身份zhidao证号码(非真实人的身份证号)其中一个为错误号码,在没有认真核对以前很难发现。

2、新建一列校验结果列,双击单元格,粘贴以下公式代码

=IF(A3="","",(IF(MID("10X98765432",MOD(SUMPRODUCT(MID(A3,ROW(INDIRECT("1:17")),1)*2^(18-ROW(INDIRECT("1:17")))),11)+1,1)=MID(A3,18,18),"正确","错误")))

将公式中三处 A3 修改为你要校验的身份证号码所在单元格名,然后按回车键,公式自动完成校验。

3、鼠标放单元格右下角变十字时,按住下拉,完成所有行身份证号的校验,或双击本单元格右下角完成所有行校验。

4、认真核对显示校验错误的身份证号码,更正后校验列会变为“正确”。

5、身份证最后一位为校验位,但不能完全保证身份证号码的正确性,如果同时出现两位或多位号码错误,校验结果也可能显示“正确”,如图,

相关阅读

关键词不能为空
极力推荐
  • 如何制作excel表格-如何做有颜值的表格

  • -02-简化视图数据太多,关键数据难以集中展示,频繁拖到好心累!-03-巧用边框很多时候,同样的数据排列方式,只是几条简单的边框改变了,表格就能焕然一新。-如何制作excel表格

ppt怎么做_excel表格制作_office365_word文档_365办公网