Excel总结

时间:2012-11-15 00:31:14

标签: excel excel-formula

我有这个,例如:

ColA   ColB  
X      1
Y      2
Z      3
X      4

我希望能够总结B列中的所有值

  • A列= X或
  • A列= Y.

结果应为7(1 + 2 + 4)。

我这样做了:

SUM(IF(COUNTIF(A:A,"X"),VLOOOKUP("X",A:B,2,),"0"), IF(COUNTIF(A:A,"Y"),VLOOOKUP("Y",A:B,2,),"0"))

由于某种原因,它返回3.由于某种原因,它不会添加X的第二个值。

任何想法为什么?

谢谢!

2 个答案:

答案 0 :(得分:0)

=SUMPRODUCT(((A2:A5="X")+(A2:A5="Y"))*(B2:B5))

如果选择公式的一部分并按Ctrl + =,则可以看到它的评估方式。

=SUMPRODUCT((({TRUE;FALSE;FALSE;TRUE})+({FALSE;TRUE;FALSE;FALSE}))*(B2:B5))

现在当这两个数组加在一起时,TRUE被强制为1,FALSE被强制为零。

=SUMPRODUCT(({1;1;0;1})*(B2:B5))

得到的1和0数组乘以B2:B5中的数组。

=SUMPRODUCT({1;2;0;4})

总结到7。

答案 1 :(得分:0)

你的公式会返回一个错误(太多了!)但VLOOKUP s 3。由于问题不在于Y,因此请通过取出公式的那一部分来简化问题:

=IF(COUNTIF(A:A,"X"),VLOOKUP("X",A:B,2,),"0")  

这导致1。但同样如此:

=VLOOKUP("X",A:B,2,)  

因此COUNTIF(A:A,"X")(返回2因为有X的两个实例)实际上没有帮助。替换为7,或1035=5 - 没有区别。

你显然知道普通的香草VLOOKUP在找到符合其“规则”的第一个实例后会停止“搜索”,但不幸的是,在找到一个带有COUNTIF的2时,不足以“告诉”VLOOKUP“第一场比赛,现在开始,找到第二场比赛“。

所表达的问题答案是“是的。无法通过= COUNTIF函数使VLOOKUP知道多个实例。“

相关问题