是的,昨天刚发表了一篇和Excel自定义函数有关的博客,今天又一篇,有凑数的嫌疑。但是,保存知识和传播知识本来就是写博客的初衷,所以也并不多余。

如果不知道什么是Excel自定义函数,请移步这里[1]。

上一篇博客是关于计算桩号之差的Excel自定义函数(VBA)[2],里面有如何使用Excel自定义函数(VBA函数)的简单步骤。

将下面的内容复制到模块中去,保存后即可使用自定义的IdentityNumberAge函数计算某个身份证号在某一年的年龄。

Function IdentityNumberAge(身份证号码, 计算年【四位数字】 As Integer)
Dim ID '身份证号码
Dim iYear '输入的计算年
Dim iBornYear '出生年
ID = 身份证号码
iYear = 计算年【四位数字】
'从ID中求得出生年
ID = Trim(ID) '删除空格
If Len(ID) = Then '18位身份证号码
iBornYear = Mid(ID, , )
ElseIf Len(ID) = Then '15位身份证号码
iBornYear = "" & Mid(ID, , )
Else
MsgBox "身份证号码有误!提醒:检查数据中是否有换行!"
iBornYear = "Error!"
End If
IdentityNumberAge = iYear - iBornYear
End Function

[1] http://blog.sina.com.cn/s/blog_638f98570102vfet.html
[2] http://blog.sina.com.cn/s/blog_638f98570101fbqn.html

如果您认为本文对您的工作或学习有所帮助,请对作者表示支持(评论、转载或分享),以使他获得继续写作的动力。如有任何疑问,欢迎联系t5lyg@126.com交流。

版权声明:本文由@我只是一小小鸟创作,采用“知识共享 署名-非商业性使用-禁止演绎 3.0 中国大陆 许可协议”进行许可。除非注明,均为原创文章,转载请注明:转载自这只是一小小鸟窝,并保留本段声明。本文地址:http://blog.sina.com.cn/s/blog_638f98570102vfmz.html

[VBA]根据身份证号码计算年龄的Excel函数的更多相关文章

  1. oracle根据身份证号码 计算年龄、性别

    一.Oracle根据身份证判断性别: 女生身份证: 431382198103246985 男生身份证: 150921197208173492 SQL语句如下:   select decode(mod ...

  2. mysql 中通过身份证号码计算年龄

    SELECT DATE_FORMAT(NOW(), '%Y') - SUBSTRING( '换成对应身份证',7,4) AS age

  3. php根据身份证号码计算年龄

    代码如下 复制代码 <?php function getAgeByID($id){         //过了这年的生日才算多了1周岁         if(empty($id)) return ...

  4. sql 根据身份证号码计算年龄

    ,), GETDATE()) / 365.25) from ConstructionInfo

  5. SQL语句通过身份证号计算年龄

    SQL语句通过身份证号计算年龄 1.截取身份证号上的出生日期 身份证一般为18位数和15位数 18位数身份证的第7-10位数是出生年份,第11-14位数是出生月日,所以18位身份证的年龄计算如下 su ...

  6. JS根据身份证号码算年龄

    如果把身份证号码传到页面上,在前端页面获取年龄就需要用到JS脚本了: function GetAge(identityCard) { var len = (identityCard + "& ...

  7. SQL 根据身份证号码获取年龄的函数

    在数据库的运用过程中,我们时常会碰到根据身份证号码来获取当前的年龄,今天我在这里写了一个函数,就是关于获取年龄的 create or replace function FUNC_COMPARE_SFZ ...

  8. IOS 根据身份证号码获取 年龄 生日 性别

    /** 从身份证上获取年龄 18位身份证 */ -(NSString *)getIdentityCardAge:(NSString *)numberStr { NSDateFormatter *for ...

  9. C# 身份证号码验证正则和验证函数

    做身份证验证的时候要求能够按照标准18位身份证验证,普通正则表达式不能满足需求,所以在网上找到了这个函数,很好用,虽然还是有漏洞,不过一般乱填的号码都能被屏蔽掉 身份证验证函数(标准18位验证) pr ...

随机推荐

  1. linux 建库,编码,导入数据

    二.导入数据库1.首先建空数据库mysql>create database abc; 2.导入数据库方法一:(1)选择数据库mysql>use abc;(2)设置数据库编码mysql> ...

  2. C#使用jmail组件发送邮件

    1.安装 命令行环境下,到jmail.dll所在目录,运行regsvr32 jmail.dll 2.代码 #region 发送邮件    /// <summary>    /// 发送邮件 ...

  3. 冷门却使用的 javascript 技巧

    前端已经被玩儿坏了!像用近似乱码的 javascript 拼一个图形,并且能够正常执行等炫酷的玩意已经不是什么新闻了,像用||操作符给变量赋默认值也是人尽皆知的旧闻了,今天看到Quora上一个帖子,瞬 ...

  4. cocos2dx 利用CCOrbitCamera实现扑克牌翻牌效果

    [cpp] view plaincopy #include "HelloWorldScene.h" #include "SimpleAudioEngine.h" ...

  5. c++11 : Local and Unnamed Types as Template Arguments

    In N2402, Anthony Williams proposes that local types, and unnamed types be usable as template argume ...

  6. Tabs( 选项卡)

    一. 加载方式 //class 加载方式<div id="box" class="easyui-tabs" style="width:500px ...

  7. C#基础枚举的设计

    枚举分为:简单枚举和标记枚举(为了枚举值位操作) 标记枚举的用法:

  8. textarea固定大小,不可拖动

    写前端,经常很多小东西容易忽略忘记,今天写页面碰到设定一个输入框大小,死活记不起怎么固定,故找了一下度娘,其实添加一个css属性就好了: resize: none; 随笔记一下!

  9. 当setTimeout遇到闭包

    1: function myTest(){ for(var i=0; i< 5; i++){ setTimeout(console.log(i), 0); } } myTest(); 或者比较正 ...

  10. 从客户端检测到危险的Request.Form值解决方案

    1.修改aspx页面中的代码,设置ValidateRequest="false" <%@ Page Language="C#" AutoEventWire ...