Excel:Sumproduct,数组输入和范围无效

时间:2016-09-03 17:09:48

标签: arrays excel-formula range

我正在尝试做一个像

这样的产品
=SUMPRODUCT(A1:A8,{8,7,6,5,4,3,2,1})

但是它给了#VALUE!错误,

虽然它为

提供了有效值
=SUMPRODUCT({8,7,6,5,4,3,2,1},{8,7,6,5,4,3,2,1})

或者

=SUMPRODUCT(A1:A8,A1:A8)

根据我的理解,只有当所有输入都是Range或Array类型时才有效,但是当两者都有时,它才有效。有没有办法让它发挥作用?

2 个答案:

答案 0 :(得分:1)

或者您可以将;用于垂直数组:

=SUMPRODUCT(A1:A8,{8;7;6;5;4;3;2;1})

{8,7,6,5,4,3,2,1}是类似于A1:H1等水平范围的水平数组,对于垂直范围A1:A8不适用

我无法测试它,但另一种方法可以使用Row函数:

=SUMPRODUCT(A1:A8,9-Row(A1:A8))

答案 1 :(得分:0)

=SUMPRODUCT(TRANSPOSE(D3:D10),{8,7,6,5,4,3,2,1})
  

编辑:如果输入数组forumla

,则上面的代码有效
=SUMPRODUCT(D3:D10,TRANSPOSE({8,7,6,5,4,3,2,1}))

无需输入数组公式即可工作。