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

无需VLOOKUP且不新增列:Excel单单元格跨列匹配求和

解决单个单元格计算符合条件的C列总和问题

嘿,我完全懂你的限制——不能加新列、不能下拉公式,就得在一个单元格里搞定对吧?刚好有两个靠谱的数组/数组兼容公式能满足你的需求,我给你拆解清楚:

方法1:数组公式(适配Excel旧版本)

直接在目标单元格输入这个公式,然后按 Ctrl+Shift+Enter 完成输入(新版Excel可直接回车,旧版必须按组合键触发数组计算):

=SUM(IF(COUNTIF(A:A,B:B)>0,C:C,0))

公式拆解:

  • COUNTIF(A:A,B:B):逐个检查B列的每个值,判断它在A列中是否存在。存在则返回1(或出现次数),不存在返回0。
  • IF(...,C:C,0):如果B列当前值在A列存在,就保留对应的C列数值;否则替换成0,避免干扰求和结果。
  • SUM(...):把所有符合条件的C列数值累加,得到最终总和。

用你的示例数据测试的话,结果会是100+400+500=1000,完全符合预期。

方法2:SUMPRODUCT公式(无需数组快捷键,更省心)

如果你嫌按组合键麻烦,SUMPRODUCT天生支持数组运算,直接输入回车就能用:

=SUMPRODUCT(--(COUNTIF(A:A,B:B)>0),C:C)

公式拆解:

  • --(COUNTIF(A:A,B:B)>0):先判断B列值是否在A列存在(得到TRUE/FALSE的布尔结果),用--把布尔值转换成1和0(TRUE→1,FALSE→0)。
  • SUMPRODUCT(...):把转换后的1/0数组和C列数组对应相乘,再将所有乘积相加——本质就是只累加那些B列值在A列存在的C列数值,和方法1效果完全一致。

这两个方法都不需要新增列,也不用下拉公式,单个单元格就能搞定,完美匹配你的需求!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:50:28