2011-09-23 50 views
8

我用Excel做两个向量之间的一些点积:点产品在Excel工作不

=MMULT(B1049:M1049, TRANSPOSE(B1050:M1050)) 

但它不工作,作为公式的单元格中显示“#值!”。我想知道为什么?谢谢!

请注意,“B1049:M1049”和“B1050:M1050”中的所有单元均为数字。

PS:这个问题更适合这里还是超级用户?

回答

8

需要输入MMULT作为阵列式,而不是作为一个标准的公式

而不是然后按下回车键时,输入PRES式 CTRL移进入 和Excel将进入它作为一个阵列

它最终会看起来像
{=MMULT(B1049:M1049, TRANSPOSE(B1050:M1050))}

(请注意,您不能在{}手动输入)

你可能想看看Excel帮助覆盖该井

+0

谢谢!我在哪里可以找到Excel 2007中的Excel帮助?或/和一些在线信息? – Tim

+0

没有probs,thx为快速接受:)。 (1)在Excel中按F1并键入MMULT。或者(2)点击你的MMULT功能,然后按下Shift-F3以打开MMULT的帮助超链接功能向导 – brettdj

14

可能是简单的,你可以用= SUMPRODUCT(VEC 1,VEC 2)。 这完全是欧几里得的内在产物,不依赖于数组公式。

+0

在问题的陈述中,我没有看到任何地方的单词矩阵,但我确实看到点产品,但意图取决于OP,所以我不能争辩!无论哪种方式,使用数组函数的一个很好的教训是共享的,但我想分享一个更轻量级和直接的解决方案来解决这个问题。 – RonnieDickson

+0

这是另一个解释它的来源:http://www.mrexcel.com/forum/excel-questions/17929-vector-dot-product.html – phyatt