如何用Google Sheets的ARRAYFORMULA生成起止日期覆盖的年份列表?
用ARRAYFORMULA生成起止日期覆盖的年份列表
在C1单元格输入以下公式即可实现需求:
=ARRAYFORMULA(IF(A2:A="",,TEXTJOIN(", ",TRUE,SEQUENCE(YEAR(B2:B)-YEAR(A2:A)+1,1,YEAR(A2:A)))))
公式说明
ARRAYFORMULA:实现整列批量计算,无需逐行复制公式IF(A2:A="",, ...):跳过A列无起始日期的空行,避免生成无效内容SEQUENCE(YEAR(B2:B)-YEAR(A2:A)+1, 1, YEAR(A2:A)):根据起止日期的年份差,生成连续的年份序列。比如起始2021、结束2024时,会生成2021,2022,2023,2024的序列TEXTJOIN(", ", TRUE, ...):将年份序列用「逗号+空格」拼接成字符串,TRUE参数会自动忽略序列中的空值
效果验证
对应你提供的示例数据,公式会生成预期结果:
| 起始日期 | 结束日期 | 年份 |
|---|---|---|
| 2021-02-01 | 2024-03-13 | 2021, 2022, 2023, 2024 |
| 2019-01-01 | 2019-03-01 | 2019 |
| 2020-01-31 | 2022-02-01 | 2020, 2021, 2022 |
内容的提问来源于stack exchange,提问作者IMTheNachoMan
相关产品推荐
相关产品推荐

