取生日
函数名:idc_生日 / idc_Birthday
功能描述
从身份证号中提取出生日期,默认输出格式为 YYYY-MM-DD,可通过分隔符参数自定义日期分隔符,支持 15 位和 18 位身份证号码及单元格区域批量输入。
会员等级:🟢 免费版(Free)
语法
excel
=idc_Birthday(身份证号, [分隔符])参数
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| 身份证号 | Object | 是 | - | 18 位或 15 位身份证号码,支持单个值或单元格区域 |
| 分隔符 | Object | 否 | - | 生日日期的分隔符,默认为"-" |
返回值
二维数组(Object[,]) - 返回与输入形状一致的二维数组,元素为格式化日期字符串,格式为 yyyy{分隔符}MM{分隔符}dd。
使用示例
默认分隔符提取生日
公式:
excel
=idc_Birthday("11010519491231002X")结果:
1949-12-31自定义分隔符
公式:
excel
=idc_Birthday("11010519491231002X", "/")结果:
1949/12/31无分隔符输出
公式:
excel
=idc_Birthday("11010519491231002X", "")结果:
19491231技术说明
- 数据清洗:自动去除身份证号中的空格、横线(-)和点号(.)。
- 生日提取:18 位取第 7-14 位(yyyyMMdd);15 位取第 7-12 位(yyMMdd)并在年份前补 "19"。
- 格式化:使用指定分隔符按
yyyy{分隔符}MM{分隔符}dd输出。 - 区域支持:当输入为单元格区域时,逐个处理并返回同维度的二维数组。
错误处理
| 错误场景 | 返回值 |
|---|---|
| 身份证号为空 | 身份证号为空 |
| 身份证号长度不正确 | 身份证号长度不正确 |
| 生日解析失败 | 生日信息无效 |
| 其他异常 | 错误: 错误信息 |