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

求助:Excel中计算两个日期所跨日历季度数量的公式

计算两个日期实际跨越的日历季度数量的Excel公式

要计算两个日期实际覆盖的日历季度总数(包含起始和结束日期所在的季度),可以使用以下两种通用公式:

公式1:基于季度编号计算

=ROUNDUP((YEAR(EndDate)*4+ROUNDUP(MONTH(EndDate)/3,0)) - (YEAR(StartDate)*4+ROUNDUP(MONTH(StartDate)/3,0)) +1,0)

逻辑说明:

  • 将每个日期转换为「年度季度编号」:比如2023年Q3对应2023*4+3=8095,2024年Q3对应2024*4+3=8099
  • 用结束季度编号减去起始季度编号,再加1(包含两端季度),得到最终跨越的季度数

示例验证:

当StartDate=2023/7/17,EndDate=2024/7/9时:

  • 起始季度编号:2023*4+ROUNDUP(7/3,0)=8095
  • 结束季度编号:2024*4+ROUNDUP(7/3,0)=8099
  • 计算结果:8099-8095+1=5,与预期一致

公式2:基于季度起始日期计算

=DATEDIF(DATE(YEAR(StartDate),INT((MONTH(StartDate)-1)/3)*3+1,1),DATE(YEAR(EndDate),INT((MONTH(EndDate)-1)/3)*3+1,1),"m")/3 +1

逻辑说明:

  • DATE(YEAR(StartDate),INT((MONTH(StartDate)-1)/3)*3+1,1):获取起始日期所在季度的第一天(比如7月17日对应2023/7/1)
  • DATE(YEAR(EndDate),INT((MONTH(EndDate)-1)/3)*3+1,1):获取结束日期所在季度的第一天(比如7月9日对应2024/7/1)
  • 用DATEDIF计算两个季度起始日的月份差,除以3得到间隔的季度数,再加1(包含两端季度)

示例验证:

当StartDate=2023/7/17,EndDate=2024/7/9时:

  • 季度起始日分别为2023/7/1和2024/7/1,月份差为12
  • 计算结果:12/3+1=5,与预期一致

边界情况测试:

若起始和结束日期在同一季度(比如2023/7/1到2023/9/30),两个公式都会返回1,符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 04:02:23