10
A
回答
14
雙破折號被稱爲雙重一元運算符。
嘗試此鏈接:Why use -- in SUMPRODUCT formulae
具體來說:
SUMPRODUCT()忽略非數字的條目。比較返回一個布爾值(TRUE/FALSE),它是非數字的。 XL在算術運算中自動將布爾值強制爲數值(分別爲1/0)(例如,TRUE + 0 = 1)。
強制值的最有效方法是首先應用一元減法運算符,將TRUE/FALSE強制爲-1/0,然後再次應用它來取反該值,例如+1/0。
單元運算符( - )脅迫真/假值到-1/0。通過使用雙重一元操作符,我們再次將值強制爲1/0。
4
一元運算符( - )是將true/false語句轉換爲-1/0的簡寫方法。
一個單一的運營商將轉換 - (真)爲-1,所以雙元運算符是用來給轉換回1:
-(-(true)) = -(-(1)) = 1
-(-(false)) = -(-(0)) = 0
0
我一直在使用SUMPRODUCT了一段時間,一直使用*
符號而不是--
。我確定我問過你問過的同一個問題,但我不記得他們給我的原因,但我被告知,由於沒有它,sumproduct管理得很好,所以並不需要--
。
無論如何,=sumproduct(()*()*()*())
一直爲我工作,它不那麼容易混淆。
0
將excel中的布爾值TRUE和FALSE視爲1和0,但我們需要將它們轉換。要將它們轉換爲數字1或0,請執行一些數學運算。 Unary運算符否定布爾(數學運算),因此將布爾轉換爲數字。 TRUE * FALSE = 0
- 同樣可以在一個時間強制一個數組。 – Noumenon 2015-10-09 01:26:09