一、VBA简单介绍
Excel VBA是依附在Excel中的二次开发语言,全称为Visual Basic For Application。VBA更重的应用在与开发插件和设计运算系统(财务,人事管理系统).当VBA的功能发挥到机制时候,很多平常需要数小时的计算工作,VBA能在三两秒内完成。
二、提取身份证号计算案例
a) 实现方式1
在A1处输入身份证号
在B2输入fx的函数计算
=DATEDIF(DATE(MID(A1,7,4-(LEN(A1)=15)*2),MID(A1,11-(LEN(A1)=15)* 2,2),MID(A1,13-(LEN(A1)=15)*2,2)),NOW(),"Y")
在C2输入fx的函数计算
=TEXT(RIGHT(19&MID(A1,7,LEN(A1)/2-1),8),"#年##月##日")
在D2输入fx的函数计算
=IF(ISODD(MID(A1,15,3)),"男","女")
效果如下:
当你输入身份证号的时候。 年龄和日期和性别都会自动计算出来。这就是优势,在 你手动输入的时候会出错。所以vba提供的计算是相当占优势
b) 实现方式2
将函数改成VBA的内置函数 参数:1为对单元格引用,2为信息描述(不区分大小写)
=SFZ(A1,"NL") 计算年龄
=SFZ(A1,"SR") 计算生日
=SFZ(A1,"XB")或=SFZ(A1) 计算性别
c) 实现方式3
这个实现比较抽象了,安装好VBA的插件,批量获取身份证信息.xlam赋值到一下启动文件夹中即完成安装
C:\Progran Fukes\Mircrosoft Office\Office14\XLSTART
选择B2:B5右击选择批量获取身份证信息,确定计算区域 该对话框中默认显示当前区域 就哦了
或者选择身份证的单元格,该区域的地址会自动产生对话框,选择显示年龄等区域,只要输入 $B$2:$B$5 就搞定了