求和在Excel中是個聊不完的話題,如果SUM求和是個沒有底線的“求和”,而SUMIF就是有底線的”求和“,有底線歸有底線,但還是繼承了SUM函數的一個特性,就是容錯性,即:非數字單元格,會識別為0進行計算。
今天我就來聊聊這個有底線的SUMIF函數的用法。
01SUMIF
語法結構:SUMIF(條件區域,比較表達式,求和范圍)
條件區域:單元格引用范圍;
條件表達式:可為數值,字符串,含有比較表達式的單元格引用地址,并支持通配符(*?~);
注:比較運算符中的=,常省略不寫;
求和范圍:選填參數,省略則會按條件區域來計算,錄入單元格或單元格引用范圍,都會以錄入引用范圍最左上角的單元格為開始單元格,以條件引用范圍的行高和列寬為擴展區域進行計算;
求和原理:
通過條件區域和條件表達式,確認滿足條件所在的相對位置,再以求和范圍的起始單元格為基準,按相對位置的數據進行求和;
有很多學生不止一次的問我:學習某個函數,掌握到什么程度才能算好呢?怎么衡量?
我:學一個函數,說白了就是掌握參數與結果的對應關系,總結參數各個類型的用法,邊界,以及對函數結果的關系。哪跟著我的思路,解析一下SUMIF函數的功能。
要解析就得從條件區域開始,參數為引用單元格范圍,或行或列,哪我以列為例,將參數分為簡單的兩類:單列和多列;
02條件區域:單列
根據條件區域和求和范圍的關系,分為同一列,不同列:
①同一列:這種情況多為整列都為數字,
條件表達式:多數由比較運算符和數字組成,這時條件表達式必須用雙引號“包裹,否則會彈出”此公式有問題”的錯誤;求和范圍:多數省略1.現有公司部門銷售表,匯總出銷售額大于10000的銷售總和。
總和公式比較簡單:=SUMIF(C:C,">10000");
除了上面簡單寫法,該函數還有一種特殊的寫法,就是一次可執行多條件同時篩選求和,說白了就是條件表達式支持數組格式。不過這種格式,并不表示多條件有任何的關聯,得到的結果也是依次執行條件的結果。在默認情況下,只顯示第一組結果,其它的結果,需要借助函數才能讀取。
我看到很多學生有用SUM讀取結果,這是不對的,使用SUM得到結果是多個篩選條件的總和,其中有可能包含對某些單元格重復求和,而正確的做法是使用函數INDEX來讀取。
2.數據同上,在F1,F2分別對>10000和<=10000的銷售額求和?
通常的做法是:F1錄入公式=SUMIF(C:C,">10000"),F2錄入公式=SUMIF(C:C,"<=10000");
還有一種高級點的做法,在F1錄入=INDEX(SUMIF(C:C,{">10000","<=10000"}),row()),拖拽填充公式至F2;
INDEX的用法詳見鏈接:Excel的搭檔函數INDEX,MATCH,你用對了嗎?
雖然這個簡單的例子并不能凸顯這種寫法的便利,它還有更多玩法,稍后再敘。
②不同列:相比較上面的例子,會稍微有點復雜,我們通過兩個例子深入了解一下。
3.表格數據同上,求某個部門的銷售額的總和?
常見的做法:在求和單元格錄入:=SUMIF(B:B,”銷售部1”,C:C);
如果你熟知函數的求和原理,你可以寫的更簡潔些,=SUMIF(B:B,”銷售部1”,C1),不過即便這么做了,如果是面試的話,這種答案得不了高分。
正確的做法是,將部門做成列表,具體操作步驟如下:
1.G1,H1分別錄入部門,銷售業績匯總;2.選中G2,點擊【數據】下的【數據驗證】按鈕,設置選項卡,允許(A):選序列,來源(s)錄入:銷售部1,銷售部2,銷售部3,銷售部4,點擊確定;3.H2輸入公式:=SUMIF(B:B,G2,$C$1),回車。
4.數據同上,匯總每個部門的銷售額總和?
現在再看見這個問題,是不是異常簡單,只需兩步:
1選中案例1中的G2單元格,鼠標移至G2右下角,鼠標變成實心+時,拖拽至G5;2.選中H2,鼠標移至右下角,鼠標變實心+,雙擊,填充公式搞定。不過,這是第1案例的基礎上做,看似簡單,若累加上上面的操作,并不簡單,其實還有更簡化的操作:
1.在G2,錄入1,鼠標移至右下角,鼠標變實心+,按ctrl,拖拽至G5,然后ctrl+1或鼠標右鍵菜單選設置單元格格式,設置自定義,在類型(T)錄入:銷售部0或銷售部#,點擊確定;2.在H2錄入公式=SUMIF(B:B,"*"&G2,$C$1),鼠標移至右小角,變實心+,雙擊完成公式填充。
這里用到了通配符,在Excel中通配符一共有3個分別*?~,其中*表示0到多個字符,但當其單獨使用時,會被識別為非空。比如公式中,“*“&1,表示1結尾的任何字符串,包括單獨的數字1,通過*和數字就足以篩選區別其它部門了。
如果是你,你會選擇用什么方法來做呢?
03條件區域:多列
SUMIF函數不光具備匯總求和的功能,它還有一個隱含的功能就是查詢,當匯總的數據只有一條,就秒變查詢了。
如果想用一個公式搞定,既有查詢,又有匯總,就需要用到條件區域多列的特性。
希望通過下面這個特殊的例子,能給SUMIF函數使用上的靈感,費言少敘,上個例子:
例:現有學生成績表:
要求查詢出任宏國,溫玉方,馬海建,周彥生的語文成績;女生數學成績總和,201801班英語成績總和?
當我把這個例子,給我的學生做的時候,大部分人把:前四寫了一個公式,后兩個分別用單獨的公式做的,屏幕前的你是不是也是這種思路呢?
不過我可以通過一個SUMIF和INDEX公式組合搞定,具體操作如下:
1.H1:H6,分別錄入條件,任宏國,溫玉方,馬海建,周彥生,女,201801班;2.在I1錄入公式=INDEX(SUMIF(A:C,$H$1:$H$6,$D$1),ROW()),拖拽至I6,完成公式填充。
這個例子看似沒有規律可言,其實篩選條件和結果有著對應關系的,數據總共6列,姓名和語文成績對應,性別和數學成績對應,班級和英語成績對應;
這也是SUMIF函數求和匯總的原則:篩選條件表達式在條件區域中相對的列標位置,和匯總求和的結果區域相對列標位置相同;
換成大白話就是:條件篩選時,在第2列找到符合條件的數據,在結果區域輸出第2列對應行的數據或多個數據的總和。
文字難理解,就來張原理圖:
04總結:
聊到這,SUMIF函數的基本功能暫告一段落,最后概括了幾句話僅供參考:
1.條件區域:一列多列與結果為對應關系,對應結果區域有數據,返回結果,無返回0;2.條件表達式:一個條件或多個條件,返回結果與順序無關,關鍵看匹配出結果在條件區域的位置。3.結果區域:錄入參數只需錄入開始單元格位置即可,其它可忽略,若結果有誤,先查該參數是否與條件區域有錯誤的情況。
標簽: sumif函數的使用方法
新聞排行
圖文播報
科普信息網 - 科普類網站
聯系郵箱:85 572 98@qq.com 備案號: 粵ICP備18023326號-39
版權所有:科普信息網 www.www44bkbkcom.cn copyright © 2018 - 2020
科普信息網版權所有 本站點信息未經允許不得復制或鏡像,違者將被追究法律責任!