2013-08-05 90 views
0

在细节请解释什么(A1:A10 = “福特”)和(B1:B10 = “六月”)指的是下述式中的和什么值的每个返回:阵列不等式作为SUMPRODUCT参数

= SUMPRODUCT( (A1:A10 = “福特”)*(B1:B10 = “六月”))

enter image description here

+0

将得到A2,A3,A4和A5的价格,并将这些价格的总和乘以B2,B3,B5,B6,B7,B8和B10的价格之和。 – JeremiahDotNet

+1

@JeremiahDotNet不是真的 – alwbtc

+1

chancea给了你一个全面的解释 - 如果你使用的是Excel 2007或更高版本,那么COUNTIFS在这里可能会更好(或SUMIFS,如果你想总结列C满足条件) - 注意它看起来像你的例子来自http://www.xldynamic.com/source/xld.SUMPRODUCT.html - 该链接还包括一个非常广泛的解释SUMPRODUCT –

回答

2

由于实际上从未被在这种情况下使用塔C,使用SUMPRODUCT实际上是一样的如使用SUM。的A1:A10="Ford"B1:B10="June"只是返回包含阵列真/假值:

Make Month 
True True 
True True 
True False 
True True 
False True 
False True 
False True 
False False 
False true 

在实际的公式它看起来像:

=SUMPRODUCT({false,true,true,true,true,false,false,false,false,false}*{true,true,true,false,true,true,true,true,false,true}) 

由于在Excel布尔值实际上只是表示为1或0,他们最终像这样:

=SUMPRODUCT({0,1,1,1,1,0,0,0,0,0}*{0,1,1,0,1,1,1,1,0,1}) 

现在,当你乘的阵列觉得就像矩阵相乘:

Make Month 
1 x 1 = 1 
1 x 1 = 1 
1 x 0 = 0 
1 x 1 = 1 
0 x 1 = 0 
0 x 1 = 0 
0 x 1 = 0 
0 x 0 = 0 
0 x 1 = 0 

所以最后它看起来像:

=SUMPRODUCT({1,1,0,1,0,0,0,0,0,0}) 

返回3由于只有一个参数,它的工作原理就像SUM功能。

现在我居然假设你想SUM所有FordJune组合的价格,所以你应该使用:

=SUMPRODUCT((A1:A10="Ford")*(B1:B10="June"),(C1:C10)) 

将实际使用SUMPRODUCT方法来繁殖,再总结的产物两个数组

(With SUMPRODUCT) 
Make Month   Price 
1 x 1 => 1 x 07,500 = 07,500 
1 x 1 => 1 x 08,300 = 08,300 
1 x 0 => 0 x 06,873 = 0 
1 x 1 => 1 x 11,200 = 11,200 
0 x 1 => 0 x 13,000 = 0 
0 x 1 => 0 x 14,999 = 0 
0 x 1 => 0 x 17,500 = 0 
0 x 0 => 0 x 23,500 = 0 
0 x 1 => 0 x 18,000 = 0 
         Total = 27,000 

希望这回答你的问题

+1

这是我有最好的答案在这个网站上见过 – alwbtc