上篇文章跟大家分享了SUM函數(shù)非一般的用法,本文我們來品味SUMIF的魅力。
SUMIF,根據(jù)指定條件對若干單元格求和。其函數(shù)原型:SUMIF(range,criteria,sum_range),參數(shù):
range 為用于條件判斷的單元格區(qū)域
criteria 為確定哪些單元格將被相加的條件,其形式可以為數(shù)字、表達式或文本。例如,條件可以表示為 32、”32″、”>32″或”surda”
sum_range 求和的實際單元格區(qū)域
我們知道,SUMIF函數(shù)是一個很常用且有用的條件求和函數(shù),但估計大家常用只是單條件求和.
我們通過例子來看SUMIF函數(shù)的用法.(文末附實例下載)
(表名=sumif1)
單列條件區(qū)域 求和
公式一 =SUMIF(A2:A9,”t*”,C2:C9) = 1200
公式二 =SUMIF(A1:A9,”t*”,C2:C9) = 1100
公式為計算域名t開頭的google訪問量,為什么兩公式結果不一樣?
特別說明:求和區(qū)域與條件區(qū)域錯開1行,則參與求和單元格與原單平行單元格錯開1行,再求和(SUMIF會自動偏移)
公式三 =SUMIF(A2:A9,”t*”,C2) = 1200
特別說明:SUMIF第三參數(shù)可略寫為求和區(qū)域的第1單元格
多列條件區(qū)域 求和
我們同樣計算域名t開頭的google訪問量,條件區(qū)域為A2:F9
公式四 =SUMIF(A1:F9,”T*”,C1) = 2400
公式五 =SUMIF(A1:F9,”T*”,C1:F9) = 2400
公式六 =SUMIF(A1:F9,”T*”,C2) = 2200 //再次偏移1行
特別說明:SUMIF函數(shù)條件區(qū)域可以跨不同字段,第一參數(shù)(range)在同列并與第三參數(shù)(sum_range)水平距離保持一致。域名字段分別在A\D,google字段分別在C\F,A->C的距離等于D->F的距離。
以上兩例公式同樣可以用SUM函數(shù)(數(shù)組公式)代替:
=SUMIF(A2:A9,”t*”,C2:C9) 可替代為 =SUM((LEFT(A2:A9)=”t”)*C2:C9) 數(shù)組公式
=SUMIF(A1:F9,”T*”,C1:F9) 可替代為 =SUM((LEFT(A2:A9)=”t”)*(C2:C9),(LEFT(D2:D9)=”t”)*(F2:F9))
跨表條件 求和 SUM+SUMIF+INDIRET
表sumif2有如上圖一樣的數(shù)據(jù)區(qū)域,現(xiàn)在對兩表A2:A9 開頭為”t”的google訪問量求和。答案為600*4=2400
看公式:(數(shù)組公式 CTRL+SHIFT+ENTER)
=SUM(SUMIF(INDIRECT(“sumif”&{1,2}&”!A2:A9″),”t*”,INDIRECT(“sumif”&{1,2}&”!C2:C9″)))
以上應該是我們常用于單條件求和的SUMIF應用,如何實現(xiàn)雙條件乃至多條件的求和。
還是用上面的例子:求以 t 開頭域名來自google的訪問量,但排除 t 本身。
公式十 =SUM(SUMIF(A2:A9,{“t*”,”t”},C2:C9)*{1,-1}) = 600
我們用{}將雙條件包裹起來做為常量數(shù)組,其原理由于篇幅關系就不深究,其實就是
=SUMIF(A2:A9,”t*”,C2:C9)-SUMIF(A2:A9,”t”,C2:C9) 的變體。
另:實例中還有個用單元格引用作為條件求和,在此也不多講,估計實際應用中不多,看實例吧!