Skip to content

idc_Age函数

函数名:sfz_年龄 / idc_Age

函数功能

根据身份证号计算年龄,支持15位和18位身份证号码。可自定义基准日期,默认使用当前日期计算年龄。

参数规范

参数名类型必填示例特殊说明
idCardString"11010519491231002X"支持15位或18位身份证号码
refDateDateTime?2025-07-18计算年龄的基准日期,默认使用今天

使用案例

默认基准日期计算年龄

问题描述:根据身份证号计算当前年龄 公式演示

excel
=idc_Age("11010519491231002X")

输出效果(假设今天是2025-07-18):

text
75

自定义基准日期计算年龄

问题描述:根据身份证号和指定日期计算年龄 公式演示

excel
=idc_Age("11010519491231002X", DATE(2030,1,1))

输出效果

text
79

错误处理示例

问题描述:身份证号为空或无效 公式演示

excel
=idc_Age("")

输出效果

text
身份证号为空
excel
=idc_Age("123456789")

输出效果

text
身份证号长度不正确

技术说明

年龄计算逻辑

  • 先调用sfz_生日函数提取出生日期。
  • 基准日期默认为当天日期,可通过第二参数自定义。
  • 年龄计算为基准年份减出生年份。
  • 若基准日期在当年出生日期之前,年龄减1。

异常处理

错误场景返回值
空身份证号身份证号为空
身份证号长度错误身份证号长度不正确生日信息无效
日期解析错误错误: 错误信息

扩展应用

结合条件格式做年龄筛选

excel
=idc_Age(A1) >= 18  // 判断是否成年

批量年龄统计

结合表格列批量计算身份证对应年龄,方便人群年龄分析。

注:本函数依赖sfz_生日函数确保生日信息有效,支持WPS 2019+和Excel 365环境。