idc_Birthday函数
函数名:sfz_生日 / idc_Birthday
函数功能
从身份证号中提取出生日期,输出格式为YYYY-MM-DD,支持15位和18位身份证号码。
参数规范
| 参数名 | 类型 | 必填 | 示例 | 特殊说明 |
|---|---|---|---|---|
idCard | String | 是 | "11010519491231002X" | 支持15位或18位身份证号码 |
使用案例
提取出生日期
问题描述:获取身份证对应的出生日期 公式演示:
excel
=idc_Birthday("11010519491231002X")输出效果:
text
1949-12-31输入校验
问题描述:处理空白或长度不正确的身份证号 公式演示:
excel
=idc_Birthday("")输出效果:
text
身份证号为空excel
=idc_Birthday("123456789")输出效果:
text
身份证号长度不正确生日信息无效
问题描述:身份证中生日格式错误时的返回 公式演示:
excel
=idc_Birthday("11010519991331002X")输出效果:
text
生日信息无效技术说明
生日提取逻辑
- 清理身份证号中的空格、横线及点号。
- 18位身份证号生日字段为第7至14位(8位数字,格式
yyyyMMdd)。 - 15位身份证号生日字段为第7至12位(6位数字,格式
yyMMdd),自动补“19”作为年份前缀。 - 使用严格的日期格式解析校验生日有效性。
异常处理
| 错误场景 | 返回值 |
|---|---|
| 空身份证号 | 身份证号为空 |
| 身份证号长度错误 | 身份证号长度不正确 |
| 生日解析失败 | 生日信息无效 |
| 其他异常 | 错误: 错误信息 |
扩展应用
身份证生日批量提取
结合数组公式批量处理身份证列表,快速获得出生日期信息。
excel
=idc_Birthday(A2)注:本函数在WPS 2019+和Excel 365中测试通过,适用于身份证生日字段提取及日期格式规范校验。