You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中用SEQUENCE函数生成月度首日日期序列

生成Google Sheets每月首日日期序列的方法

一、使用SEQUENCE函数实现

核心思路是通过SEQUENCE生成月份偏移量,搭配EDATE函数计算每月首日。

公式示例(引用单元格)

假设A1单元格存起始日期2020-01-01,B1单元格存结束日期2022-12-01,输入以下公式:

=EDATE(A1, SEQUENCE(DATEDIF(A1, B1, "M") + 1, 1, 0))
  • DATEDIF(A1, B1, "M"):算出两个日期间的总月数(结果为35),加1是为了包含结束月份,最终序列长度为36
  • SEQUENCE(36, 1, 0):生成从0到35的连续整数,作为月份偏移量
  • EDATE(A1, 偏移量):给起始日期加上对应月数,得到每月首日

公式示例(直接嵌入日期)

若不想用单元格引用,直接写日期的公式:

=EDATE("2020-01-01", SEQUENCE(DATEDIF("2020-01-01", "2022-12-01", "M") + 1, 1, 0))

二、其他可行方法

1. 手动快速填充

  • 输入第一个日期2020-01-01
  • 选中该单元格,鼠标移到右下角填充柄(小方块)
  • 按住右键向下拖动到目标范围,松开后选择「填充月份」,自动生成每月首日

2. DATE+SEQUENCE组合公式

直接通过年份、月份序列生成日期:

=DATE(2020 + INT((SEQUENCE(36, 1, 0))/12), 1 + MOD(SEQUENCE(36, 1, 0), 12), 1)
  • SEQUENCE(36,1,0):生成0到35的序列(对应36个月)
  • INT((序列)/12):计算年份偏移(0→2020,1→2021,2→2022)
  • MOD(序列,12):计算月份偏移(0→1月,1→2月…11→12月)
  • DATE(年, 月, 1):组合成每月首日

3. ARRAYFORMULA+ROW组合公式

用ROW生成序列替代SEQUENCE,适配旧版Google Sheets:

=ARRAYFORMULA(EDATE("2020-01-01", ROW(INDIRECT("1:"&DATEDIF("2020-01-01", "2022-12-01", "M")+1))-1))
  • INDIRECT("1:36"):生成1到36的行号序列,减1后得到0到35的偏移量,再通过EDATE生成日期

内容的提问来源于stack exchange,提问作者Juan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 00:35:30