如何在Google Sheets中将日期向下取整至指定的1月1日或5月1日?
Google Sheets 日期向下取整至最近的1月1日/5月1日解决方案
方法一:IF+DATE函数(直观易理解)
假设需要处理的日期在单元格A1,使用以下公式:
=IF(MONTH(A1)>=5, DATE(YEAR(A1),5,1), DATE(YEAR(A1),1,1))
逻辑说明:
- 提取日期的月份,判断是否≥5:
- 若是,返回当前年份的5月1日
- 若否,返回当前年份的1月1日
- 自动适配跨年场景,比如2023年12月的日期会返回2023年5月1日,2024年3月的日期返回2024年1月1日
方法二:CHOOSE+MIN函数(更简洁)
同样基于A1单元格,公式如下:
=DATE(YEAR(A1), CHOOSE(MIN(MONTH(A1),6),1,1,1,1,5,5),1)
逻辑说明:
- 用
MIN(MONTH(A1),6)将月份范围压缩至1-6:1-4月保持原数,5-12月统一转为6 - 通过
CHOOSE函数映射:1-4月对应1(1月),5-6月对应5(5月),最终生成目标日期
验证示例
- 输入
2028/7/8→ 返回2028/5/1 - 输入
2024/1/15→ 返回2024/1/1 - 输入
2023/4/30→ 返回2023/1/1 - 输入
2023/5/1→ 返回2023/5/1
内容的提问来源于stack exchange,提问作者Thenoone
相关产品推荐
相关产品推荐

