excel #value中的sumproduct函数

时间:2015-05-24 17:58:50

标签: excel

我有以下excel表

enter image description here当我输入=SUMPRODUCT(A1:D1,E1:E4)

我得#VALUE! 为什么是这样?都是数字字段

3 个答案:

答案 0 :(得分:3)

A1:D1范围是1行×4列。 E1:E4范围是4行×1列。虽然它们每个都包含4个细胞,但它们的尺寸不同;例如一个是另一个的转置。粗略地说,它们是相同的尺寸,只是尺寸不同。

您可以使用TRANSPOSE function将其中一个范围翻转到另一个范围,但您必须将其用作数组公式,以提供额外的子处理层。只要您使用CSE来完成公式,这些就足够了。

=SUMPRODUCT((A1:D1), TRANSPOSE(E1:E4))
=SUM((A1:D1)*TRANSPOSE(E1:E4))

数组公式需要使用 Ctrl + Shift + Enter↵进行最终确定。

答案 1 :(得分:1)

SUMPRODUCT的数组应该具有相同的长度。

您可以根据自己的情况选择=SUMPRODUCT(A1:E4)=SUMPRODUCT(A1:E1,A2:E2,A3:E3,A4:E4)

来自:https://support.office.com/en-nz/article/SUMPRODUCT-function-4e0bffa7-4291-4635-a61f-6aaa9399e7ff

  

数组参数必须具有相同的尺寸。如果他们不这样做,   SUMPRODUCT返回#VALUE!错误值。

答案 2 :(得分:0)

正如其他响应者所指出的那样,你会得到错误,因为尺寸不一样 - 一个是水平的,另一个是垂直的。

要扩展我对您的答案的评论,如果您想要做的是:

A1*E1+B1*E2+C1*E3+D1*E4

这是一个矩阵产品,结果仅由

给出
=MMULT(A1:D1,E1:E4)

请在互联网上搜索矩阵乘法的详细说明,因为它相当复杂。

另一方面,如果要将水平数组中的每个条目乘以垂直数组中的每个条目:

A1*E1+A1*E2+A1*E3+A1*E4+B1*E1+B1*E2+ ...

然后您可以使用数组输入(与ctrl+shift+enter确认)公式:

=SUM(A1:D1*E1:E4)