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

如何在Excel表格中基于另一列的值计算滚动求和?

Excel 按分组实现当前行及之前行的滚动求和

你的问题核心是SUMIFS的条件范围没限定到当前行及以上,原公式里[Item]是整个列的范围,所以会匹配所有相同Item的行,而非仅当前行之前的。下面是几种可行的解决方案:

方法1:修正原SUMIFS公式(兼容所有带结构化引用的Excel版本)

把条件范围改成和求和区域对应的「表头到当前行」的Item范围,公式如下:

=SUMIFS(MyTable[[#Headers],[Value]]:[@Value], MyTable[[#Headers],[Item]]:[@Item], [@Item])
  • 原理:求和区域是MyTable[[#Headers],[Value]]:[@Value](当前行及以上的Value),条件区域同步限定为MyTable[[#Headers],[Item]]:[@Item](当前行及以上的Item),这样只会统计到当前行为止的相同Item的Value之和。

方法2:数组公式(兼容旧版Excel)

如果你的Excel版本不支持自动溢出,用数组公式实现:

=SUM(IF(MyTable[Item]:[@Item]=[@Item], MyTable[Value]:[@Value], 0))
  • 输入后按 Ctrl+Shift+Enter 完成数组公式录入(Excel 365/2021无需此操作,自动计算)。

方法3:动态数组公式(Excel 365/2021专属)

利用BYROW和FILTER函数一次性计算整列,无需下拉:

=BYROW(MyTable, LAMBDA(row_data, SUM(FILTER(MyTable[Value], (MyTable[Item]=INDEX(row_data,1))*(ROW(MyTable)<=ROW(row_data))))))
  • 原理:逐行遍历表格,对每一行筛选出「Item相同且行号小于等于当前行」的Value,再求和。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 04:46:01