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

Excel按年份计算年初至今(YTD)累计值的公式需求及问题

Excel 按年份计算年初至今(YTD)累计值的稳定公式

原公式问题分析

你使用的公式=IF(YEAR(A2)=YEAR(A3);SUM($B$2:B3);B2)存在两个核心问题,导致结果不稳定:

  • 固定求和起始行$B$2,跨年后仍会包含上一年的数据,无法正确重置累计
  • 依赖当前行与下一行的年份对比,最后一行因无下一行数据会返回错误判断

稳定解决方案

以下是适配不同Excel版本的可靠公式,在C2单元格输入后下拉填充即可:

1. 通用版(兼容所有Excel版本)

=SUMIF($A$2:A2,YEAR(A2),$B$2:B2)

逻辑说明:通过SUMIF筛选当前行及以上所有与当前行年份相同的记录,对对应B列数据求和。自动实现同年份从首行累计、新年份重置为当前B值的需求,完全匹配你给出的计算规则。

2. Excel 365/2021 动态数组精简版

=BYROW(A2:A18,LAMBDA(r,SUM(FILTER(B2:B18,YEAR(A2:A18)=YEAR(r)*AND(ROW(A2:A18)<=ROW(r))))))

逻辑说明:利用BYROW遍历每一行,结合FILTER筛选同年份且行号不大于当前行的B列数据,一次性生成所有累计值,无需下拉填充。

3. 定位年份首行版

=SUM(OFFSET($B$2,MATCH(YEAR(A2),YEAR($A$2:A2),0)-1,0,ROW()-MATCH(YEAR(A2),YEAR($A$2:A2),0)+1,1))

逻辑说明:通过MATCH找到当前年份在A列首次出现的行号,再用OFFSET定位到对应B列起始位置,求和至当前行,适合需要明确控制累计起始点的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 10:30:20