如何从Excel单元格中的早期日期提取年份?
解决Excel YEAR函数对1900年前日期返回#Value!的问题
问题原因
Excel默认采用1900日期系统,仅支持识别1900年1月1日及之后的日期值。像2/12/1875这类1900年之前的日期,要么是以文本形式存储,要么无法被Excel的日期函数解析,因此使用=YEAR(A1)会返回#Value!错误。
可行解决方案
因为Excel原生不支持1900年前的日期计算,只能通过文本提取的方式获取年份:
- 如果日期文本格式固定为
mm/dd/yyyy(如2/12/1875),直接提取最后4位:=RIGHT(A1,4) - 如果日期格式不固定(比如月份/日期可能是1位或2位),用嵌套查找定位年份位置:
=MID(A1,FIND("/",A1,FIND("/",A1)+1)+1,4)
补充说明
如果需要对1900年前的日期做更复杂的日期运算,Excel原生功能无法实现,只能借助VBA自定义函数或者外部工具处理。
内容的提问来源于stack exchange,提问作者Name
相关产品推荐
相关产品推荐

