如何在SUMIFS函数中使用两列之和作为条件范围(不新增列)
如何在SUMIFS函数中使用两列之和作为条件范围(不新增列)
嘿,完全懂你的困扰——共享的透视表不能随便加列,又要精准算出特定日期持有的工具总价值对吧?其实不用新增辅助列也能轻松实现,咱们直接在SUMIFS里用数组运算来替代额外列的计算就行!
核心思路
你的需求是筛选出满足两个条件的工具:
- 接收日期 ≤ 目标日期(比如第8天)
- 接收日期 + 持有天数 > 目标日期(也就是还没到丢弃的日期)
SUMIFS的条件范围支持直接用列与列的运算表达式,相当于在内存里临时计算了「接收日期+持有天数」的值,不会改动你的透视表结构。
具体公式
如果目标日期固定为8,公式可以写成:
=SUMIFS(D2:D4, B2:B4, "<=8", B2:B4+C2:C4, ">8")
- 要是你用的是旧版Excel(2019及以前),输入完公式后需要按
Ctrl+Shift+Enter作为数组公式确认; - 新版Excel 365/2021或者Google Sheets支持动态数组,直接回车就能生效。
灵活引用目标日期
如果想把目标日期放在单元格里(比如E1单元格),方便随时修改,公式可以调整为:
=SUMIFS(D2:D4, B2:B4, "<="&E1, B2:B4+C2:C4, ">"&E1)
验证逻辑
咱们对着你的数据核对一下:
- 扳手:接收日3≤8,3+7=10>8 → 符合条件,计入总和
- 螺丝刀:接收日7≤8,7+19=26>8 → 符合条件,计入总和
- 六角扳手:接收日14>8 → 直接排除
最终总和是10+13=23.00,完全符合你的预期!
备注:内容来源于stack exchange,提问作者Thomas Clayson
相关产品推荐
相关产品推荐

