当前位置:软件学堂 > 资讯首页 > 软件教程 > 办公软件 > Excel如何提取身份证中的出生日期并计算年龄

Excel如何提取身份证中的出生日期并计算年龄

2014/6/5 16:53:22作者:佚名来源:网络

移动端

我们在工作当中常常会使用到身份证号,有了身份证号我们就可以清楚地算出年龄及出生日期,那么到底在Excel中通过VBA如何提取身份证中的出生日期并计算年龄?要提取身份证中的出生日期并计算年龄我们可以利用VBA中的Mid函数分别获取出生年月日,并用DateSerial函数将其转换为日期,然后再用DateDiff函数计算机出生年月与当前日期间隔的年数,从而算出年龄,具体步骤如下:

步骤一、按组合键“Alt+F11”打开VBE。

步骤二、选择菜单“插入”“模块”并输入以下代码

Sub 获取身份证中出生日期()
    '变量声明
    Dim RowN    As Long     '行号
    Dim sIDNo   As String   '身份证号码
    '循环遍历
    For RowN = 2 To Cells(Rows.Count, "A").End(xlUp).Row
        '获取身份证号码
        sIDNo = Cells(RowN, "B").Value
        '提取出生年月
        Cells(RowN, "C").Value = DateSerial _
        (Mid(sIDNo, 7, 4), Mid(sIDNo, 11, 2), Mid(sIDNo, 13, 2))
        '使用DateDiff函数计算年龄(周岁)
        Cells(RowN, "D").Value = DateDiff("yyyy", Cells(RowN, "C").Value, Date)
    Next
End Sub

步骤三、返回工作表界面,在功能区的“开发工具”选项卡中单击“宏”按钮,执行“VBA提取身份证中的出生日期”宏后,即可得到身份证对应的出生日期以及年龄,如图所示:

提取身份证中的出生日期

相关说明:

·DadeDiff函数
DadeDiff函数可以计算两个日期之间的间隔,其语法为:
DateDiff(interval,date1,date2[,firstdayofweek[,firstweekofyear]])
参数Interval表示日期间隔以何种日期单位表示
参数date1和date2为进行计算的两个日期
firstdayofweek表示以哪一天作为一周的开始
firstweekofyear表示以何种设置为标准表示每年的一击开始。