请详细说明(A1:A10 =“福特”)和(B1:B10 =“6月”)在以下公式中的含义以及每次返回的价值:
= SUMPRODUCT((A1:A10 = “福特”)*(B1:B10 = “六月”))
答案 0 :(得分:2)
由于在这种情况下实际上从未使用过列C,因此使用SUMPRODUCT
实际上与使用SUM
相同。 A1:A10="Ford"
和B1:B10="June"
只返回包含true / false值的数组:
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
所有Ford
和June
组合的价格,所以你应该使用:
=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
希望能回答你的问题