我有以下excel表
当我输入
=SUMPRODUCT(A1:D1,E1:E4)
我得#VALUE!
为什么是这样?都是数字字段
答案 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)