Google Sheets如何将提取的年份转为数字/日期使IF分组公式生效
解决方案
问题根源
REGEXEXTRACT 函数返回的提取结果为文本类型,无法直接和数值进行大小比较,因此分组判断逻辑失效。
调整步骤
1. 优化年份提取公式
在提取结果外层套VALUE()函数将文本转换为数值,同时可根据需求补充世纪换算逻辑:
=IFERROR(VALUE(REGEXEXTRACT(D2,"\d{4}")),IF(REGEXMATCH(D2,"century"),VALUE(REGEXEXTRACT(D2,"\d{2}"))*100-100,"Check"))
注:若提取到「20 century」时公式会换算为1900,符合世纪对应年份规则,如不需要换算可去掉
*100-100部分。如果原始数据中四位数年份不在字符串开头,可将正则部分替换为".*(\d{4}).*",即可匹配字符串任意位置的四位数年份。
2. 优化年份分组公式
可替换嵌套IF为更简洁的IFS函数,减少逻辑错误:
=IFS(E2="Check","Check",E2<2000,"pre-2000",E2<=2010,"2000-2010",E2<=2016,"2011-2016",E2<=2021,"2017-2021",E2>2021,"post-2021",TRUE,"Check")
3. 格式校验(可选)
选中存储提取年份的列,点击顶部菜单「格式 > 数字 > 数字」,确认提取的年份为数值格式即可。
内容的提问来源于stack exchange,提问作者Debora S.
相关产品推荐
相关产品推荐

