在Excel公式中做什么?

时间:2010-07-20 00:47:21

标签: excel excel-formula

尝试破译一些Excel公式,我看到一些像SUMPRODUCT( - 左(...)......)

什么是 - 做什么?自然看起来像是递减给我但却找不到任何文件。

4 个答案:

答案 0 :(得分:26)

双破折号称为双一元算子。

试试此链接:Why use -- in SUMPRODUCT formulae

具体做法是:

  

SUMPRODUCT()忽略非数字条目。比较返回一个布尔值(TRUE / FALSE),该值是非数字的。 XL会自动将布尔值强制转换为算术运算中的数值(分别为1/0)(例如,TRUE + 0 = 1)。

     

强制该值的最有效方法是首先应用一元减号运算符,将TRUE / FALSE强制转换为-1/0,然后再次应用它来否定该值,例如+1/0。

单个一元运算符( - )将 true / false 值强制转换为 -1/0 。通过使用双一元运算符,我们再次将值强制为 1/0

答案 1 :(得分:5)

一元运算符( - )是将true / false语句转换为-1 / 0的简写方法。

单个运算符将 - (true)转换为-1,因此使用双一元运算符将其转换回1:

-(-(true)) = -(-(1)) = 1
-(-(false)) = -(-(0)) = 0

答案 2 :(得分:0)

我一直在使用SUMPRODUCT一直使用*符号代替--。我确定我问过你问过同样的问题,但是我不记得他们给我的原因了,但我被告知真的不需要--因为sumproduct管理得很好没有它。

无论如何,=sumproduct(()*()*()*())一直对我有用,而且不那么令人困惑。

答案 3 :(得分:0)

excel中的布尔值TRUE和FALSE被视为1和0,但我们需要转换它们。要将它们转换为数字1或0,请执行一些数学运算。一元运算符否定布尔值(数学运算),因此将布尔值转换为数字。同样适用于TRUE * FALSE = 0