在之前的文章《Excel函數(shù)學(xué)習(xí)之神奇的AGGREGATE,竟可一個(gè)抵19個(gè)!》中,我們了解了一種強(qiáng)大的統(tǒng)計(jì)函數(shù)。而今天我們來(lái)聊聊SUMPRODUCT函數(shù),sumproduct函數(shù)可以得到兩列數(shù)據(jù)的乘積之和,但是在運(yùn)用函數(shù)的過(guò)程中有非常多需要注意的地方,特別是運(yùn)用上邏輯值和數(shù)組之后,下面我們一起來(lái)看看講解!
1、SUMPRODUCT的實(shí)質(zhì)
要說(shuō)SUMPRODUCT函數(shù)的話,真的非常簡(jiǎn)單,就是得到兩列數(shù)據(jù)的乘積之和,我們用一個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明函數(shù)的基本功能:
上圖是一個(gè)非常簡(jiǎn)單的表格,要算出總價(jià)一般都是將單價(jià)*數(shù)量算出來(lái)再求和,結(jié)果如D8所示。如果使用了SUMPRODUCT函數(shù)的話,就可以直接利用單價(jià)和數(shù)量計(jì)算出總價(jià),公式1為:=SUMPRODUCT(B2:B7,C2:C7),結(jié)果如D9所示。
在這個(gè)公式里,使用了兩個(gè)參數(shù),分別是單價(jià)區(qū)域(B2:B7)和數(shù)量區(qū)域(C2:C7),函數(shù)的作用就是將第一參數(shù)(單價(jià))與第二參數(shù)(數(shù)量)中的數(shù)據(jù)對(duì)應(yīng)相乘后再求和。
2、大多數(shù)錯(cuò)誤的原因
很多朋友在使用這個(gè)函數(shù)的時(shí)候,經(jīng)常會(huì)得到錯(cuò)誤值,大多數(shù)是因?yàn)閰^(qū)域大小選擇不一致,例如下面這種情況,第一個(gè)參數(shù)有7個(gè)單元格而第二個(gè)參數(shù)只有6個(gè)單元格:
使用SUMPRODUCT函數(shù)必須要確保每個(gè)參數(shù)的區(qū)域大小相同,但很多朋友沒(méi)有注意到這一點(diǎn)。
3、另一種常見(jiàn)寫(xiě)法,逗號(hào)變乘號(hào)(*)
就這個(gè)例子來(lái)說(shuō),還有一種寫(xiě)法更為常見(jiàn),公式是這樣的:=SUMPRODUCT(B2:B7*C2:C7)
可以看到其計(jì)算結(jié)果與=SUMPRODUCT(B2:B7,C2:C7)是一致的。
一致的結(jié)果導(dǎo)致了很多朋友都百思不得其解的一個(gè)問(wèn)題:二者有何差別?
4、逗號(hào)和乘號(hào)(*)的差別
雖然只是將第一個(gè)公式里的逗號(hào)變成了乘號(hào)(*),但是公式的意義發(fā)生了變化。第一個(gè)公式(SUMPRODUCT(B2:B7,C2:C7))有兩個(gè)參數(shù),而第二個(gè)公式(B2:B7*C2:C7)是一個(gè)參數(shù)。(判斷有幾個(gè)參數(shù)要看是不是有逗號(hào)去分隔開(kāi)。)第一個(gè)公式中,兩個(gè)區(qū)域相乘這一步是由函數(shù)來(lái)完成的,函數(shù)做了兩件事,先讓兩個(gè)區(qū)域的數(shù)據(jù)對(duì)應(yīng)相乘,再把乘積相加。在第二個(gè)公式中,兩個(gè)區(qū)域相乘是由數(shù)組計(jì)算來(lái)完成的,函數(shù)只做了一件事,就是把乘積值相加。
意義的變化有何影響呢?
我們還是通過(guò)例子來(lái)看:
在上圖這個(gè)公式中用的是逗號(hào)(,),有兩個(gè)獨(dú)立的參數(shù)。SUMPRODUCT函數(shù)首先讓兩組數(shù)據(jù)對(duì)應(yīng)相乘,相乘的時(shí)候會(huì)檢查數(shù)據(jù)并把非數(shù)值型數(shù)據(jù)作為0處理,然后在把乘積相加。因此,B1“單價(jià)”和C1“數(shù)量”會(huì)當(dāng)成0來(lái)處理,公式可以得到正確結(jié)果。
當(dāng)我們把逗號(hào)換成*號(hào)后,公式結(jié)果錯(cuò)誤。為什么呢?SUMPRODUCT函數(shù)這時(shí)只負(fù)責(zé)把乘積相加。參數(shù)B2:B7*C2:C7是數(shù)組乘法運(yùn)算,因?yàn)橛?jì)算的區(qū)域中包含了文字(文字是不能進(jìn)行乘法運(yùn)算的),所以在這個(gè)數(shù)組的計(jì)算結(jié)果里就有錯(cuò)誤值了。選中公式中的“B2:B7*C2:C7”按F9可以查看B2:B7*C2:C7的運(yùn)算結(jié)果:
可以看到第一個(gè)(單價(jià)*數(shù)量)運(yùn)算結(jié)果就是錯(cuò)誤值。接下來(lái)SUMPRODUCT對(duì)包含了錯(cuò)誤值的數(shù)據(jù)進(jìn)行求和,結(jié)果肯定就是錯(cuò)誤了。
5、SUMPRODUCT用乘號(hào)(*)的要點(diǎn)
以上內(nèi)容所要表達(dá)的意思有兩點(diǎn):
第一,使用逗號(hào)和使用*號(hào)有時(shí)候結(jié)果相同,但是意義完全不一樣,希望大家可以理解。
第二,SUMPRODUCT函數(shù)使用乘號(hào)(*)必須要注意兩點(diǎn):第一,不能存在無(wú)法計(jì)算的內(nèi)容,如文字;第二,如果是兩組或多組數(shù)組相乘的話,數(shù)據(jù)區(qū)域大小一致。用逗號(hào)則只需要保證數(shù)據(jù)區(qū)域大小一致即可。
6、其實(shí)乘號(hào)還帶來(lái)了更大優(yōu)勢(shì)
我們把SUMPRODUCT函數(shù)逗號(hào)、乘號(hào)前后的數(shù)據(jù)用A、B來(lái)代替,表達(dá)為SUMPRODUCT(A,B)和SUMPRODUCT(A*B)。當(dāng)為逗號(hào)時(shí),A、B必須同時(shí)都是數(shù)值或者數(shù)組,不能一個(gè)是數(shù)值,一個(gè)是數(shù)組;當(dāng)為乘號(hào)時(shí),A、B可以同時(shí)都是數(shù)值或者數(shù)組,也可以一個(gè)是數(shù)值一個(gè)是數(shù)組。
也就是:
逗號(hào), |
乘號(hào)* |
||
SUMPRODUCT(C1,B1) |
√ |
SUMPRODUCT(C1*B1) |
√ |
SUMPRODUCT(C1:C9,D1:D9) |
√ |
SUMPRODUCT(C1:C9*D1:D9) |
√ |
SUMPRODUCT(C1:D9,F1:G9) |
√ |
SUMPRODUCT(C1:D9*F1:G9) |
√ |
SUMPRODUCT(C1:C9,D1) |
× |
SUMPRODUCT(C1:C9*D1) |
√ |
SUMPRODUCT(C1:D9,F1) |
× |
SUMPRODUCT(C1:D9*F1) |
√ |
因此,用乘號(hào)擴(kuò)大了SUMPRODUCT函數(shù)的應(yīng)用。你即將在下面看到的都是SUMPRODUCT函數(shù)用乘號(hào)的應(yīng)用。
7、看得懂這些SUMPRODUCT公式嗎?
如果明白了上面的內(nèi)容,說(shuō)明對(duì)于這個(gè)函數(shù)的基本用法是沒(méi)問(wèn)題了??墒呛芸赡芎芏郤UMPRODUCT公式你還是看不懂,比如這種:
這實(shí)際上是一個(gè)條件計(jì)數(shù)的問(wèn)題,再看這個(gè):
這是一個(gè)多條件求和的問(wèn)題,還有這個(gè):
在這個(gè)表里,幾乎各種統(tǒng)計(jì)問(wèn)題都可以用SUMPRODUCT函數(shù)去解決,不再一一舉例。僅僅是上面列出的三個(gè)公式,都能看明白的朋友可能就不多了。
為什么已經(jīng)理解了SUMPRODUCT函數(shù)的用法,卻還看不懂這些公式呢,更別說(shuō)自己去用公式來(lái)解決問(wèn)題了。原因就是你還不了解這兩個(gè)知識(shí)點(diǎn):邏輯值和數(shù)組。
8、了解一點(diǎn)邏輯值和數(shù)組
先來(lái)說(shuō)說(shuō)邏輯值,邏輯值只有兩個(gè),就是TRUE和FALSE。當(dāng)我們?cè)诠嚼镞M(jìn)行某種比較或者判斷的時(shí)候,就會(huì)產(chǎn)生邏輯值,以SUMPRODUCT((I2:I22="張三")*1) 為例,其中的(I2:I22="張三")就是一個(gè)判斷。通常情況下,我們是以單元格去做判斷,I2 ="張三"的意思就是判斷I2單元格內(nèi)容是否為"張三",如果是則得到TRUE,反之得到FALSE。當(dāng)我們使用了一個(gè)區(qū)域去判斷的時(shí)候,就會(huì)得到一組數(shù)據(jù),這其實(shí)就是一個(gè)數(shù)組了。例如I2:I22="張三"就會(huì)得到一組邏輯值,可以用F9來(lái)看看計(jì)算結(jié)果:
如果有興趣的話可以逐一對(duì)比銷(xiāo)售員和結(jié)果值,會(huì)發(fā)現(xiàn)張三對(duì)應(yīng)的都是TRUE。
因?yàn)檫壿嬛禑o(wú)法直接進(jìn)行求和,必須轉(zhuǎn)換為數(shù)字才行,轉(zhuǎn)換的方法就是對(duì)邏輯值進(jìn)行加減乘除之一的任何運(yùn)算即可。在這個(gè)公式中,*1就是這個(gè)作用,可以看看效果:
通過(guò)*1運(yùn)算之后,TRUE都變成了1,而FALSE都變成了0。不要問(wèn)我為什么,Excel就是這么規(guī)定的,邏輯值與數(shù)字的對(duì)應(yīng)關(guān)系就是這個(gè)。
好了,我們首先得到一組邏輯值,然后通過(guò)*1變成一組數(shù)字,再進(jìn)行求和,就達(dá)到了按條件計(jì)數(shù)的目的。你現(xiàn)在是否已經(jīng)理解了=SUMPRODUCT((I2:I22="張三")*1)這個(gè)公式呢?
現(xiàn)在我們了解到邏輯值,也明白了數(shù)組運(yùn)算的第一個(gè)原則:當(dāng)一組數(shù)與一個(gè)數(shù)進(jìn)行計(jì)算時(shí),是這組數(shù)中的每個(gè)數(shù)據(jù)分別與這一個(gè)數(shù)進(jìn)行計(jì)算。剛才的公式中就是這樣計(jì)算的。
9、不論SUMPRODUCT公式多復(fù)雜,全看懂!
咱們?cè)賮?lái)看看第二個(gè)公式:=SUMPRODUCT((MONTH(F2:F22)=3)*(H2:H22="二分店")*(G2:G22="襯衫")*J2:J22)
。
不要看這個(gè)公式長(zhǎng),利用我們剛才學(xué)到的知識(shí)來(lái)破解它的話其實(shí)很簡(jiǎn)單。公式還是只有一個(gè)參數(shù),只不過(guò)這個(gè)參數(shù)是由四個(gè)數(shù)組構(gòu)成的,其中的三組都是邏輯值,分別是(MONTH(F2:F22)=3)、(H2:H22="二分店")和(G2:G22="襯衫")。這三組邏輯值完成三個(gè)判斷,分別對(duì)應(yīng)了三個(gè)條件:月份=3、店面=二分店和名稱(chēng)=襯衫。具體內(nèi)容如圖所示:
看起來(lái)密密麻麻的,但是經(jīng)過(guò)了乘法運(yùn)算以后,就變成了一堆1和0,結(jié)果是這樣的:
乘積結(jié)果只有兩個(gè)1,其實(shí)就對(duì)應(yīng)了三月份二分店襯衫這兩條數(shù)據(jù)。此時(shí)的公式變成了一組邏輯值(已經(jīng)是0和1了)與一組數(shù)據(jù)(數(shù)量)相乘,再由函數(shù)完成求和。
在這個(gè)例子中,需要注意數(shù)組計(jì)算的第二個(gè)原則:當(dāng)多個(gè)(含兩個(gè))數(shù)組計(jì)算時(shí)(本例是四個(gè)數(shù)組),數(shù)組中對(duì)應(yīng)位置的數(shù)據(jù)進(jìn)行計(jì)算,要求數(shù)組中包含的數(shù)據(jù)個(gè)數(shù)相同。
到現(xiàn)在我們已經(jīng)了解到數(shù)組計(jì)算的兩個(gè)原則,現(xiàn)舉個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明:
一個(gè)數(shù)組(A1:A9)與一個(gè)數(shù)據(jù)(B1)相乘時(shí),是這組數(shù)分別與這個(gè)數(shù)據(jù)相乘;
兩個(gè)數(shù)組(A1:A9和B1:B9)相乘時(shí),是第一組數(shù)與第二組數(shù)對(duì)應(yīng)位置的數(shù)據(jù)相乘。
現(xiàn)在回頭來(lái)看這個(gè)公式=SUMPRODUCT((MONTH(F2:F22)=3)*(H2:H22="二分店")*(G2:G22="襯衫")*J2:J22)
,應(yīng)該沒(méi)那么頭疼了吧。
其實(shí)數(shù)組的計(jì)算原則還有更加復(fù)雜的情況,有興趣的朋友可以看看相關(guān)的資料,這里了解簡(jiǎn)單原理即可。再來(lái)看看第三個(gè)公式:=SUMPRODUCT((H2:H22=H2)*(G2:G22={"毛衣","襯衫"})*L2:L22)
。這個(gè)公式看上去和前面兩個(gè)有點(diǎn)區(qū)別,(G2:G22={"毛衣","襯衫"})
這部分用到了常量數(shù)組,其實(shí)這個(gè)公式本來(lái)應(yīng)該是這樣寫(xiě)的:=SUMPRODUCT((H2:H22=H2)*(G2:G22="毛衣")*L2:L22)+SUMPRODUCT((H2:H22=H2)*(G2:G22="襯衫")*L2:L22)
。
這個(gè)公式用到了兩個(gè)SUMPRODUCT函數(shù),第一個(gè)是計(jì)算總店毛衣的銷(xiāo)售額,第二個(gè)是計(jì)算總店襯衫的銷(xiāo)售額,分別看應(yīng)該每個(gè)都能理解。兩個(gè)SUMPRODUCT函數(shù)除了"毛衣"和"襯衫"這里不同,其他的完全一樣,遇到這種情況,就可以用常量數(shù)組把兩個(gè)內(nèi)容放到一起,使公式變得簡(jiǎn)潔。
通過(guò)今天的講解,我們讀懂了常見(jiàn)的SUMPRODUCT公式,解決了SUMPRODUCT函數(shù)運(yùn)用乘號(hào)的困惑,掌握了SUMPRODUCT函數(shù)更多的應(yīng)用。同時(shí),我們也了解到邏輯值和數(shù)組的一些基礎(chǔ)知識(shí)——這對(duì)我們理解其他的復(fù)雜公式有幫助。
相關(guān)學(xué)習(xí)推薦:excel教程
以上是Excel函數(shù)學(xué)習(xí)之無(wú)所不能的SUMPRODUCT!的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機(jī)

Video Face Swap
使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱門(mén)文章

熱工具

記事本++7.3.1
好用且免費(fèi)的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6
視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版
神級(jí)代碼編輯軟件(SublimeText3)

如果在打開(kāi)一份需要打印的文件時(shí),在打印預(yù)覽里我們會(huì)發(fā)現(xiàn)表格框線不知為什么消失不見(jiàn)了,遇到這樣的情況,我們就要及時(shí)進(jìn)行處理,如果你的打印文件里也出現(xiàn)了此類(lèi)的問(wèn)題,那么就和小編一起來(lái)學(xué)習(xí)下邊的課程吧:excel打印表格框線消失怎么辦?1、打開(kāi)一份需要打印的文件,如下圖所示?! ?、選中所有需要的內(nèi)容區(qū)域,如下圖所示?! ?、單擊鼠標(biāo)右鍵,選擇“設(shè)置單元格格式”選項(xiàng),如下圖所示?! ?、點(diǎn)擊窗口上方的“邊框”選項(xiàng),如下圖所示?! ?、在左側(cè)的線條樣式中選擇細(xì)實(shí)線圖樣,如下圖所示。 6、選擇“外邊框”

在日常辦公中經(jīng)常使用Excel來(lái)處理數(shù)據(jù),時(shí)常遇到需要使用“篩選”功能。當(dāng)我們?cè)贓xcel中選擇執(zhí)行“篩選”時(shí),對(duì)于同一列而言,最多只能篩選兩個(gè)條件,那么,你知道excel同時(shí)篩選3個(gè)以上關(guān)鍵詞該怎么操作嗎?接下來(lái),就讓小編為大家演示一遍。第一種方法是將條件逐步添加到篩選器中。如果要同時(shí)篩選出三個(gè)符合條件的明細(xì),首先需要逐步篩選出其中一個(gè)。開(kāi)始時(shí),可以先根據(jù)條件篩選出姓“王”的員工。然后單擊【確定】,接著在篩選結(jié)果中勾選【將當(dāng)前所選內(nèi)容添加到篩選器】。操作步驟如下所示?! ⊥瑯樱俅畏謩e執(zhí)行篩選

在我們?nèi)粘5墓ぷ鲗W(xué)習(xí)中,從他人處拷貝了Excel文件,打開(kāi)進(jìn)行內(nèi)容添加或重新編輯后,再保存的有時(shí)候,有時(shí)會(huì)提示出現(xiàn)兼容性檢查的對(duì)話框,非常的麻煩,不知道Excel軟件,可不可改為正常模式呢?那么下面就由小編為大家?guī)?lái)解決這個(gè)問(wèn)題的詳細(xì)步驟,讓我們一起來(lái)學(xué)習(xí)吧。最后一定記得收藏保存。1、打開(kāi)一個(gè)工作表,在工作表的名稱(chēng)中顯示多出來(lái)一個(gè)兼容模式,如圖所示。2、在這個(gè)工作表中,進(jìn)行了內(nèi)容的修改后保存,結(jié)果總是彈出兼容檢查器的對(duì)話框,很麻煩看見(jiàn)這個(gè)頁(yè)面,如圖所示?! ?、點(diǎn)擊Office按鈕,點(diǎn)另存為,然

在軟件的學(xué)習(xí)中,我們習(xí)慣用excel,不僅僅是因?yàn)樾枰奖悖驗(yàn)樗梢詽M足多種實(shí)際工作中需要的格式,而且excel運(yùn)用起來(lái)非常的靈活,有種模式是方便閱讀的,今天帶給大家的就是:excel閱讀模式在哪里設(shè)置。1、打開(kāi)電腦,然后再打開(kāi)Excel應(yīng)用,找到目標(biāo)數(shù)據(jù)。2、要想在Excel中,設(shè)置閱讀模式,有兩種方式。第一種:Excel中,有大量的便捷處理方式,分布在Excel中布局中。在Excel的右下角,有設(shè)置閱讀模式的快捷方式,找到十字標(biāo)志的圖案,點(diǎn)擊即可進(jìn)入閱讀模式,在十字標(biāo)志的右邊有一個(gè)小的三

在處理數(shù)據(jù)時(shí),有時(shí)我們會(huì)遇到數(shù)據(jù)包含了倍數(shù)、溫度等等各種符號(hào)的時(shí)候,你知道excel上標(biāo)應(yīng)該如何設(shè)置嗎?我們?cè)谑褂胑xcel處理數(shù)據(jù)時(shí),如果不會(huì)設(shè)置上標(biāo),這可是會(huì)讓我們的很多數(shù)據(jù)在錄入時(shí)就會(huì)比較麻煩。今天小編就為大家?guī)?lái)了excel上標(biāo)的具體設(shè)置方法。1.首先,讓我們打開(kāi)桌面上的MicrosoftOfficeExcel文檔,選擇需要修改為上標(biāo)的文字,具體如圖所示。2.然后,點(diǎn)擊右鍵,在點(diǎn)擊后出現(xiàn)的菜單中,選擇“設(shè)置單元格格式”選項(xiàng),具體如圖所示。3.接下來(lái),在系統(tǒng)自動(dòng)彈出來(lái)的“單元格格式”對(duì)話框

大部分用戶(hù)使用Excel都是用來(lái)處理表格數(shù)據(jù)的,其實(shí)Excel還有vba程序編寫(xiě),這個(gè)除了專(zhuān)人士應(yīng)該沒(méi)有多少用戶(hù)用過(guò)此功能,在vba編寫(xiě)時(shí)常常會(huì)用到iif函數(shù),它其實(shí)跟if函數(shù)的功能差不多,下面小編給大家介紹下iif函數(shù)的用法。Excel中SQL語(yǔ)句和VBA代碼中都有iif函數(shù)。iif函數(shù)和excel工作表中的IF函數(shù)用法相似,執(zhí)行真假值判斷,根據(jù)邏輯計(jì)算的真假值,返回不同結(jié)果。IF函數(shù)用法是(條件,是,否)。VBA中的IF語(yǔ)句和IIF函數(shù),前者IF語(yǔ)句是控制語(yǔ)句可以根據(jù)條件執(zhí)行不同的語(yǔ)句,后者

html讀取excel數(shù)據(jù)的方法:1、使用JavaScript庫(kù)讀取Excel數(shù)據(jù);2、使用服務(wù)器端編程語(yǔ)言讀取Excel數(shù)據(jù)。

1、打開(kāi)PPT,翻頁(yè)至需要插入excel圖標(biāo)的頁(yè)面。點(diǎn)擊插入選項(xiàng)卡。2、點(diǎn)擊【對(duì)象】。3、跳出以下對(duì)話框。4、點(diǎn)擊【由文件創(chuàng)建】,點(diǎn)擊【瀏覽】。5、選擇需要插入的excel表格。6、點(diǎn)擊確定后跳出如下頁(yè)面。7、勾選【顯示為圖標(biāo)】。8、點(diǎn)擊確定即可。
