取年龄
函数名:idc_年龄 / idc_Age
功能描述
从身份证号计算年龄,支持 15 位和 18 位身份证号码,可自定义计算年龄的基准日期(默认为今天),并支持单元格区域批量输入。
会员等级:🟢 免费版(Free)
语法
excel
=idc_Age(身份证号, [基准日期])参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| 身份证号 | Object | 是 | - | 18 位或 15 位身份证号码,支持单个值或单元格区域 |
| 基准日期 | Object | 否 | 今天 | 计算年龄的基准日期,可为日期值、日期字符串或单元格区域(取首个值),默认为今天 |
返回值
二维数组(Object[,]) - 返回与输入形状一致的二维数组,元素为整数年龄。
使用示例
默认基准日期计算年龄
公式:
excel
=idc_Age("11010519491231002X")结果(假设今天为 2026-08-07):
76自定义基准日期计算年龄
公式:
excel
=idc_Age("11010519491231002X", DATE(2030,1,1))结果:
80批量计算年龄(区域输入)
公式:
excel
=idc_Age(A1:A3)结果(A1:A3 分别为三个身份证号):
76
35
18技术说明
- 生日依赖:内部调用
idc_生日函数提取出生日期,确保日期有效后再计算年龄。 - 基准日期:默认为今天;支持 DateTime、日期字符串,若为单元格区域则取首个有效值。
- 年龄计算:基准年份减出生年份,若当年生日尚未到达则年龄减 1。
- 区域支持:当身份证号输入为单元格区域时,逐个处理并返回同维度的二维数组。
错误处理
| 错误场景 | 返回值 |
|---|---|
| 身份证号为空 | 身份证号为空 |
| 身份证号长度不正确 | 身份证号长度不正确 |
| 生日信息无效 | 对应 idc_生日 返回的错误信息 |
| 其他异常 | 错误: 错误信息 |