如何用ExcelVBA进行身份证号码真伪验证

 时间:2024-10-16 11:57:10

1、打开一张Excel表格或者新建一张Excel表格,以新建一张Excel表格为例,新建并打开Excel表格。

如何用ExcelVBA进行身份证号码真伪验证如何用ExcelVBA进行身份证号码真伪验证

2、进行初始数据的编辑,可以去网上找测试用的身份证号码,这些只是满足身份证的计算规则。然后进行代码的编辑,如果正确就在F或者G列相应打勾,否则就打叉。

如何用ExcelVBA进行身份证号码真伪验证

3、用快捷键Alt + F11打开Visual Basic编辑器,或者找到到菜单栏——开发工具——Visual Basic,如果没有开发工具这一项可以点击菜单栏文件——选项——自定义功能区进行添加。

如何用ExcelVBA进行身份证号码真伪验证

4、首先点击菜单: 插入——模块代码编辑分两大部分:身份证是否正确和性别是否正确输入以下代码Sub 身份验证()Dim arr1(), arr2(), t, leftString, sarr1 = Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2) '系数arr2 = Array("1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2") '对应的结果s = 0For Each Rng In Range("d2", Cells(Rows.Count, "d").End(xlUp)) s = 0 If Len(Rng.Text) = 18 Then For i = 1 To 17 t = Mid(Rng.Text, i, 1) '取出每位数 s = s + t * arr1(i - 1) '求和 Next i s = s Mod 11 '取余数 If arr2(s) = Mid(Rng.Text, 18, 1) Then '判断是否与最后一位相等 Range("g" & Rng.Row).Value = "√" Else Range("g" & Rng.Row).Value = "×" Range("f" & Rng.Row).Value = "×" End If Else Range("g" & Rng.Row).Value = "×" Range("f" & Rng.Row).Value = "×" '这是新加的一行,以前有点错误 End If leftString = Mid(Rng.Text, Len(Rng.Text) - 1, 1) If (leftString Mod 2) = 1 Then If Range("e" & Rng.Row).Value = "男" Then Range("f" & Rng.Row).Value = "√" Else Range("f" & Rng.Row).Value = "×" End If Else If Range("e" & Rng.Row).Value = "女" Then Range("f" & Rng.Row).Value = "√" Else Range("f" & Rng.Row).Value = "×" End If End IfNextEnd Sub

如何用ExcelVBA进行身份证号码真伪验证如何用ExcelVBA进行身份证号码真伪验证如何用ExcelVBA进行身份证号码真伪验证

5、开始进行测试,按F8逐步进行。

如何用ExcelVBA进行身份证号码真伪验证如何用ExcelVBA进行身份证号码真伪验证

6、为方便向表格中添加按钮皮薹匆热控件,在菜单栏——开发工具——插入——表单——按钮控件,鼠标会变成一个十字形左键拖动鼠标指定适宜的大小然后自动弹出宏的对话框进行指定宏添加后,把按钮名字改成“身份证验证”只需点击按钮就可以判断真伪。

如何用ExcelVBA进行身份证号码真伪验证如何用ExcelVBA进行身份证号码真伪验证如何用ExcelVBA进行身份证号码真伪验证

7、点击文件——另存为———启用宏的工作簿,然后改一下名称和路径,其他可能不能保存代码

如何用ExcelVBA进行身份证号码真伪验证
  • 怎样使用VBA播放背景音乐?
  • 用VBA批量删除Excel表中的数据
  • Excel如何用VBA拆分合并单元格?
  • Excel中,使用VBA以某一单元格内容命名工作表
  • excel中使用vba新建工作表
  • 热门搜索
    九价疫苗是什么意思 人体最大的器官是什么 木讷是什么意思 三点水一个者念什么 潜意识是什么意思 结扎是什么意思 一什么彩虹 阿肌苏丸是什么药 aoc是什么牌子 情不自禁是什么意思