2015-10-19 41 views
2

我正在使用Excel 2010.我的例子是在A1中使用1的电子表格中; B1中的2,D1中的1; D2中的2。当我被列乘行,一切工作正常:涉及一行TRANSPOSE的矩阵乘法

=MMULT(A1:B1,D1:D2) 

如果我使用变调功能本身乘以一行,并把答案在一个单一的细胞,它扼流圈(话说#VALUE!):

=MMULT(A1:B1,TRANSPOSE(A1:B1)) 

这似乎是因为它想要两次产生相同的答案。选择两个单元,在最上面的一个输入公式然后用CTRL-SHIFT-ENTER(添加大括号公式)联系起来提供了正确的答案两次:

{=MMULT(A1:B1,TRANSPOSE(A1:B1))}

出于好奇,我想=MMULT(A1:B1,TRANSPOSE(TRANSPOSE(D1:D2)))。它也想重复这个答案。

(screenshots of all five examples are together here)
screenshots of all five examples are together here

虽然我知道我可以只复制的答案复制到片面积,然后收集从那里一个单细胞,这似乎有点乱。而且,更严重的是,我担心矩阵函数链接Excel时是否会发生其他奇怪的事情。

有没有办法抑制重复,所以乘以一行一列会给出一个答案,还是我误解了一切?

+2

您不需要选择2个单元格来按Ctrl + Shift + Enter(CSE)您的公式。您可以将它CSE在一个单元格中以获得正确的结果。 – BrakNicku

+0

感谢BrakNicku,这是有效的和合理的。我以为我已经尝试过了,但显然我今天特别昏暗。 – Mike

回答

1

你必须先转置矩阵的工作表,然后乘以转置原始矩阵为你

=MMULT(A1:B1,D1:D2) 

做过这给出正确的结果,没有任何重复。使用mmult中的转置功能或者扼流圈,或者在选择多个单元时创建重复。