Sumifs函數大家都很熟悉了,用于計算滿足一組不同條件的合計。例如,我們希望計算滿足給定日期區間內某種產品的銷售數量合計:

跟第一個例子相比,這里求和的不是“蘋果”一個產品,而是一組產品的求和。
當然可以寫多個SUMIFS相加,類似于:
=SUMIFS(數量,產品,”蘋果”,…)+SUMIFS(數量,產品,”桃”,…)+…
但是這個函數就過于復雜了!
此時,我們可以使用下列的公式完成這個工作:
=SUMPRODUCT(SUMIFS(D3:D24,C3:C24,G6:G11,B3:B24,”>=”&H2,B3:B24,”<=”&H3))
我簡單解釋一下這個公式:
首先,不管外面的那個SUMPRODUCT,里面只是一個簡單的SUMIFS:
SUMIFS(D3:D24,C3:C24,G6:G11,B3:B24,”>=”&H2,B3:B24,”<=”&H3)
除了里面的產品條件參數(第三個參數)外,這個公式與前面介紹的那個簡單的SUMIFS函數一模一樣,只不過將“蘋果”換成了一個區域:G6:G11。這個替換導致同樣的SUMIFS為這個區域的每個值計算了一個合計,得到了一個數組:
{蘋果合計,桃合計,梨合計,櫻桃合計,橘子合計,橙子合計}
于是,整個公式相當于:
SUMPRODUCT({蘋果合計,桃合計,梨合計,櫻桃合計,橘子合計,橙子合計})
SUMPRODUCT的作用就是把這個數組的各個結果加起來,正好就是我們想要的結果。






