在 Excel 的工作表中,若要計算一個數列中符合某一條件者的總和,大概都是要想到 SUMIF 函數。最近讓學生練習以 SUMPRODUCT 函數和陣列公式來完成相同工作:

儲存格D2:=SUMIF(B2:B13,">5")

如果要以 SUMPRODUCT 函數來代替:

儲存格D3:=SUMPRODUCT((B2:B13>5)*B2:B13)

(B2:B13>5):會產生{True,False,False,True,True,False,False,True,False,True,False,Fasle}的陣列。

(B2:B13>5)*B2:B13:可以將 True/False 陣列轉換成 1/0 陣列,再和儲存格B2:B12來做乘積的運算。

如果要以陣列公來完成:

儲存格D4:{=SUM(IF(B2:B13>5,B2:B13,FALSE))}

輸入完成,要按 Ctrl+Shift+Enter 鍵。

即取出符合條件的陣列,再以 SUM 運算。

arrow
arrow
    全站熱搜

    vincent 發表在 痞客邦 留言(3) 人氣()