2014-03-26 30 views
0

我使用的是包含公式的excel報告,後來幾天,我開始面對excel報告中單元格中的公式問題。您能否幫我理解Excel公式

使用的公式是:

=SUM(('Defects Past SLA'!D4:D72="1 - High")*('Defects Past SLA'!P4:P72="Zero")) 

'here 'Defects Past SLA'是表名稱 '在這片材,柱d具有很少的細胞與值"1 - High"P column具有很少的細胞與值"Zero".

我的唯一的問題是如何Sum function在這裏工作,你能幫我理解上面的公式。我嘗試了很多,但無法弄清楚它的含義。謝謝你的幫助。

回答

3

SUM實際計數,其中該薄片的列d包含1 - High其中同一行的P列中包含的Zero所有行。

這裏有一個較小的表的例子:

A B 
1 0 
0 1 
0 0 
1 1 

如果我做的:

=SUM((A:A=1)*(B:B=1)) 

我將獲得的1

(A:A=1)結果給出了真假的數組。當上述適用於數據,我們得到:

A 
1 => True 
0 => False 
0 => False 
1 => True 

替換該公式中,我們得到:

=SUM((True; False; False; True)*(B:B=1)) 

同樣的事情發生在列B:

B 
0 => False 
1 => True 
0 => False 
1 => True 

代那在公式中,我們得到:

=SUM((True; False; False; True)*(False; True; False; True)) 

現在,在Excel中,True與1相同,而False與0相同。這意味着,我們可以將上述改寫爲:

=SUM((1; 0; 0; 1)*(0; 1; 0; 1)) 

這是數組的乘法。數組的第一個任期內將在下一個陣列的第一項相乘,使我們擁有:

1 x 0 = 0 
0 x 1 = 0 
0 x 0 = 0 
1 x 1 = 1 

這意味着如果我們在上述公式中替換的結果,我們得到:

=SUM((0; 0; 0; 1)) 

而且這些值的總和是1


請注意,您的特定情況下相當於公式將是:

=COUNTIFS('Defects Past SLA'!D4:D72,"1 - High",'Defects Past SLA'!P4:P72,"Zero") 
+0

謝謝傑瑞。COUNTIFS()函數爲我工作。但是當我嘗試使用SUM()函數時,它不起作用。假設我想計算列A中值爲1的單元格,則= SUM(A:A = 1)應該輸出值'2',但它顯示爲'0'。 'SUM'功能是否接受範圍,是否只有A:A,不能是A1:A12。你能否幫助我更多地瞭解SUM函數與各種值的關係。 – Srekk

+0

@Srekk當你以這種方式調用SUM函數時,你必須「數組輸入」它(因爲它使用數組並且本質上不是數組函數)。要輸入數組,請按住Ctrl + Shift,然後在輸入公式後按Enter鍵。 – Jerry

+0

哦,那是我犯錯的地方。現在很清楚。感謝您給出清晰的圖片。 – Srekk