SUMPRODUCT這個函數從字面來理解SUM是求和,PRODUCT是乘積,綜合到一起就是對各個數組參數計算乘積并返回乘積之和。接下來就一起看看這個函數的一些典型的用法。
1、計算商品總價
如下圖所示,C列是商品單價,D列是商品數量,要計算所有商品的總價,可以使用下面這個公式:=SUMPRODUCT(C2:C12,D2:D12)
本例中,也可以將中間的逗號換成乘號:=SUMPRODUCT(C2:C12*D2:D12)
那這個“*”和“,”啥區別呢?當求和區域中有文本的時候,在兩個數組之間使用逗號,會把文本當成0來處理。要是使用乘號的話,如果求和區域中有文本,就返回錯誤值
,但是使用逗號也是有前提條件的,就是兩個數組的行、列數必須一樣,否則會返回一個錯誤值。?
2、計算指定條件的總價
如下圖所示,要計算部門為“辦公室”的所有商品總價,可以使用以下公式:=SUMPRODUCT((A2:A12“辦公室”)*C2:C12*D2:D12)
這個公式中,先使用(A2:A12=“辦公室”),判斷A列的部門是不是等于指定的部門,得到一組由TRUE和FALSE構成的邏輯值。邏輯值不能直接作為數組參數,但是可以參加四則運算,所以咱們用乘號,最后再將各個乘積進行求和。
3、計算指定月份的總金額
如下圖,要根據A列的日期,計算2月份的總金額。
公式為:
=SUMPRODUCT((MONTH(A2:A12)=2)*1,D2:D12,E2:E12)
MONTH(A2:A12)=2是用month判斷此區域月份是不是為2,如果是則后續計算出乘積和。公式可以改為=SUMPRODUCT((MONTH(A2:A12)=2)*D2:D12*E2:E12)
4、計算指定月份、指定部門的總金額
如下圖,要計算2月份大食堂的總金額。
公式為:
=SUMPRODUCT((MONTH(A2:A12)=2)*(B2:B12=“辦公室”),D2:D12,E2:E12)
公式看起來很長,但是和第三個例子是一樣的,就是多了一個部門的判斷條件(B2:B12=“辦公室”)。
5、根據兩個條件計算采購量
如下圖,要根據B1:E1單元格中的日期和A2:A12單元格中的品名,來計算對應的采購量。公式為:=SUMPRODUCT((B1:E1=1*“2021-2-2″)*(A2:A12=“黃瓜”)*B2:E12)
6、同一區域設置多個條件
如下圖所示,要計算2月份白菜和土豆的總采購量。公式為:
=SUMPRODUCT((MONTH(B1:E1)=2)*((A2:A12=“白菜”)+(A2:A12=“土豆”))*B2:E12)
((A2:A12=”白菜”)+(A2:A12=”土豆”)) 注意,兩個條件之間使用了加號。
7、帶通配符的求和
如下圖所示,要根據A列的手機型號,統計帶有“摩托羅拉”字樣的手機銷量。公式為:=SUMPRODUCT(ISNUMBER(FIND(“摩托羅拉”,A2:A12))*B2:B12*C2:C12)
SUMPRODUCT函數的參數中不支持使用通配符,所以使用ISNUMBER(FIND(“摩托羅拉”,A2:A12))。
感興趣的話可以在微信公眾號中搜索“數據處理和工作效率:Big_Data-",查看其他文章。