今天的文章,選自《Excel效率手冊 早做完,不加班》,盧子的成名作。時間過得好快,2011年開始寫書,轉(zhuǎn)眼已8年了。
通過Sum的學(xué)習(xí)知道他可以求和、計(jì)數(shù),Sum能做到的Sumproduct都能做到,而且做得更好。Sumproduct這個函數(shù)本身就支持?jǐn)?shù)組,所以條件計(jì)數(shù)、求和的時候不需要按三鍵,正因?yàn)檫@樣受到大多數(shù)人的喜歡。有人把他比喻成璀璨的明珠,光芒四射,魅力無窮,稱為求和之王不為過。
通用公式:
計(jì)數(shù):
=SUMPRODUCT((條件1)*(條件2)*(條件3)*…*(條件N))
求和:
=SUMPRODUCT((條件1)*(條件2)*(條件3)*…*求和區(qū)域)
下面通過10個小例子來說明下條件計(jì)數(shù)、求和的用法。
1.女性有幾個人?
=SUMPRODUCT(--(C4:C22="女"))
2.潛水時間大于15天的男性?
=SUMPRODUCT((E4:E22>15)*(C4:C22="男"))
3.2月份發(fā)言的男性
=SUMPRODUCT((MONTH(D4:D22)=2)*(C4:C22="男"))
這里涉及到一個新函數(shù)MONTH,作用就是將日期轉(zhuǎn)換成月份,相關(guān)聯(lián)的函數(shù)還有YEAR,作用是將日期轉(zhuǎn)換成年,DAY函數(shù)將日期轉(zhuǎn)換成日。
4.不包括笑看今朝的男性
=SUMPRODUCT((A4:A22<>"笑看今朝")*(C4:C22="男"))
<>(不等于)屬于比較運(yùn)算符,=(等于),>(大于),<(小于),>=(大于等于),<=(小于等于),跟我們數(shù)學(xué)的表示方法略有差別,但作用一樣。
5.女性潛水總天數(shù)
=SUMPRODUCT((C4:C22="女")*E4:E22)
6.潛水時間大于15天的男性的潛水天數(shù)
=SUMPRODUCT((E4:E22>15)*(C4:C22="男")*E4:E22)
7.2月份發(fā)言的男性的潛水天數(shù)
=SUMPRODUCT((MONTH(D4:D22)=2)*(C4:C22="男")*E4:E22)
8.QQ號首位是8的人的潛水天數(shù)
=SUMPRODUCT((LEFT(B4:B22)="8")*E4:E22)
LEFT語法:LEFT(文本,N),提取左邊的N位文本,省略第二參數(shù),就是提取1位。
9.姓名字符數(shù)為2,不包括月亮的人的潛水天數(shù)
=SUMPRODUCT((LEN(A4:A22)=2)*(A4:A22<>"月亮")*E4:E22)
LEN語法:LEN(字符),統(tǒng)計(jì)字符個數(shù),漢字、字母、數(shù)字都是一個字符;
LENB(字符),統(tǒng)計(jì)字節(jié)個數(shù),漢字兩個字節(jié),字母、數(shù)字為一個字節(jié)。
10.笑看今朝和冷逸的潛水天數(shù)
=SUMPRODUCT(((A4:A22="笑看今朝")+(A4:A22="冷逸"))*E4:E22)
+在這里是或的意思,只要滿足其中一個就行,這個有時可以替代OR的功能,如=IF(OR(A4="笑看今朝",A4="冷逸"),1,0)等同于=IF((A4="笑看今朝")+(A4="冷逸"),1,0),但反過來OR不能替代+在數(shù)組中的用法,切記!
簡化:
=SUMPRODUCT((A4:A22={"笑看今朝","冷逸"})*E4:E22)
公式剖析,老辦法,先轉(zhuǎn)換成單元格比較。
A5={"笑看今朝","冷逸"},一個單元格跟兩個值同時比較,滿足就顯示TRUE,否則FALSE。
A5={"笑看今朝","冷逸"}【F9】鍵得到{TRUE,FALSE}。
說明:【F9】鍵解讀公式,就是在編輯欄某部分的公式不理解,就選擇這部分內(nèi)容,在編輯欄按【F9】鍵,也稱為抹黑。類似于公式求值這個功能,不過更加靈活,絕大多數(shù)高手都喜歡用【F9】鍵。
({TRUE,FALSE})*E5【F9】鍵得到{6,0},也就是說,只要單元格滿足其中一個值,就一定會得到由0跟單元格本身組成的常量數(shù)組,完全不滿足就顯示{0,0},因?yàn)閱卧癫豢赡芡瑫r存在滿足兩個條件,所以不會出現(xiàn){6,6}這種情況。
=SUMPRODUCT((A5={"笑看今朝","冷逸"})*E5)
【F9】鍵抹黑得到:
=SUMPRODUCT({6,0})
同理:
=SUMPRODUCT((A4:A22={"笑看今朝","冷逸"})*E4:E22)
【F9】鍵抹黑得到:
=SUMPRODUCT({0,0;6,0;0,5;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0;0,0})
到這里就不再進(jìn)行解釋,留點(diǎn)空間給大家思考。
有Sum作為鋪墊,理解Sumproduct會變得異常簡單。今天就到此結(jié)束,有疑問可以反饋出來。
上篇:VLOOKUP函數(shù)滾一邊去,我才是Excel真正的查找之王!
作者:盧子,清華暢銷書作者,《Excel效率手冊 早做完,不加班》系列叢書創(chuàng)始人,個人公眾號:Excel不加班(ID:Excelbujiaban)