首頁 專題 excel Excel函數學習之無所不能的SUMPRODUCT!

Excel函數學習之無所不能的SUMPRODUCT!

May 24, 2022 am 11:49 AM
excel

在之前的文章《Excel函數學習之神奇的AGGREGATE,竟可一個抵19個!在》中,我們了解了一個強大的統計函數。而今天我們來聊聊SUMPRODUCT函數,sumproduct函數可以得到兩列資料的乘積之和,但是在運用函數的過程中有非常多需要注意的地方,特別是運用上邏輯值和數組之後,下面我們一起來看看講解!

Excel函數學習之無所不能的SUMPRODUCT!

1、SUMPRODUCT的實質

要說SUMPRODUCT函數的話,真的非常簡單,就是得到兩列資料的乘積總和,我們用一個簡單的例子來說明函數的基本功能:

Excel函數學習之無所不能的SUMPRODUCT!

上圖是一個非常簡單的表格,要算出總價一般都是將單價*數量算出來再求和,結果如D8所示。如果使用了SUMPRODUCT函數的話,就可以直接利用單價和數量來計算總價,公式1為:=SUMPRODUCT(B2:B7,C2:C7),結果如D9所示。

Excel函數學習之無所不能的SUMPRODUCT!

在這個公式裡,使用了兩個參數,分別是單價區域(B2:B7)和數量區域(C2:C7),函數的作用就是將第一參數(單價)與第二參數(數量)中的資料對應相乘後再求和。

2、大多數錯誤的原因

很多朋友在使用這個函數的時候,常常會得到錯誤值,大多數是因為區域大小選擇不一致,例如下面這種情況,第一個參數有7個單元格而第二個參數只有6個單元格:

Excel函數學習之無所不能的SUMPRODUCT!

##使用SUMPRODUCT函數必須確保每個參數的區域大小相同,但許多朋友沒有註意到這一點。

3、另一種常見寫法,逗號變乘號(*)

就這個例子來說,還有一種寫法更為常見,公式是這樣的:=SUMPRODUCT(B2:B7*C2:C7)

Excel函數學習之無所不能的SUMPRODUCT!

可以看到其計算結果與=SUMPRODUCT(B2:B7,C2: C7)是一致的。

一致的結果導致了許多朋友都百思不得其解的一個問題:二者有何差別?

4、逗號和乘號(*)的差別

雖然只是將第一個公式裡的逗號變成了乘號(*),但是公式的意義改變了。第一個公式(SUMPRODUCT(B2:B7,C2:C7))有兩個參數,而第二個公式(B2:B7*C2:C7)則是參數。 (判斷有幾個參數要看是不是有逗號去分隔開。)第一個公式中,兩個區域相乘這一步是由函數來完成的,函數做了兩件事,先讓兩個區域的資料對應相乘,再把積相加。在第二個公式中,兩個區域相乘是由陣列計算來完成的,函數只做了一件事,就是把乘積值相加。

意義的改變有何影響呢?

我們還是透過範例來看:

Excel函數學習之無所不能的SUMPRODUCT!

在上圖這個公式中用的是逗號(,),有兩個獨立的參數。 SUMPRODUCT函數先讓兩組資料對應相乘,相乘的時候會檢查資料並把非數值型資料當作0處理,然後在把乘積相加。因此,B1「單價」和C1「數量」會當成0來處理,公式可以得到正確結果。

Excel函數學習之無所不能的SUMPRODUCT!

當我們把逗號換成*號後,公式結果錯誤。為什麼呢? SUMPRODUCT函數這時只負責把乘積相加。參數B2:B7*C2:C7是陣列乘法運算,因為計算的區域包含了文字(文字是不能進行乘法運算的),所以在這個陣列的計算結果裡面就有錯誤值了。選取公式中的「B2:B7*C2:C7」按F9可以查看B2:B7*C2:C7的運算結果:

Excel函數學習之無所不能的SUMPRODUCT!

可以看到第一個(單價*數量)運算結果就是錯誤值。接下來SUMPRODUCT對包含了錯誤值的資料進行求和,結果肯定就是錯誤了。

5、SUMPRODUCT用乘號(*)的要點

以上內容所要表達的意思有兩點:

第一,使用逗號和使用*號有時候結果相同,但是意義完全不一樣,希望大家可以理解。

第二,SUMPRODUCT函數使用乘號(*)必須注意兩點:第一,不能存在無法計算的內容,如文字;第二,如果是兩組或多組數組相乘的話,數據區域大小一致。用逗號則只需要保證資料區域大小一致即可。

6、其實乘號還帶來了更大優勢

#我們把SUMPRODUCT函數逗號、乘號前後的資料用A、 B來代替,表達為SUMPRODUCT(A,B)和SUMPRODUCT(A*B)。當為逗號時,A、B必須同時都是數值或數組,不能一個是數值,一個是數組;當為乘號時,A、B可以同時都是數值或是數組,也可以一個是數值一個是數組。

也就是:

逗號,

乘號*

SUMPRODUCT(C1,B1)

SUMPRODUCT(C1*B1)

################SUMPRODUCT######(C1:C9,D1:D9)### ###############√######

求和(C1:C9*D1:D9)

##求和(C1:D9,F1:G9)

##√

SUM乘積(C1:D9*F1:G9)

##√

#SUMProduct(C1:C9, D1)

##×

#SUMProduct

(C1:C9* D1)

求和(C1:D9,F1)

# ×

求和(C1:D9*F1)

########################################## ## ## #√####################

因此,用乘號擴大了SUMPRODUCT函數的應用。你即將在下面看到的都是SUMPRODUCT函數用乘號的應用。

7、看懂這些SUMPRODUCT公式嗎?

如果明白了上面的內容,表示對於這個函數的基本用法是沒問題了。可是很可能很多SUMPRODUCT公式你還是看不懂,比如這種:

Excel函數學習之無所不能的SUMPRODUCT!

#這其實是一個條件數的問題,再看這個:

Excel函數學習之無所不能的SUMPRODUCT!

這是一個多條件求和的問題,還有這個:

Excel函數學習之無所不能的SUMPRODUCT!

#在這個表裡,幾乎各種統計問題都可以用SUMPRODUCT函數去解決,不再一一舉例。光是上面列出的三個公式,都能看懂的朋友可能就不多了。

為什麼已經理解了SUMPRODUCT函數的用法,卻還看不懂這些公式呢,更別說自己去用公式來解決問題了。原因就是你還不了解這兩個知識點:邏輯值和陣列。

8、了解一點邏輯值和陣列

#先來說說邏輯值,邏輯值只有兩個,就是TRUE和FALSE。當我們在公式裡進行某種比較或判斷的時候,就會產生邏輯值,以SUMPRODUCT((I2:I22="張三")*1) 為例,其中的(I2:I22="張三" )就是一個判斷。通常情況下,我們是以單元格去做判斷,I2 ="張三"的意思就是判斷I2單元格內容是否為"張三",如果是則得到TRUE,反之得到FALSE。當我們使用了一個區域去判斷的時候,就會得到一組數據,這其實就是一個陣列了。例如I2:I22="張三"就會得到一組邏輯值,可以用F9來看看計算結果:

1Excel函數學習之無所不能的SUMPRODUCT!

如果有興趣的話可以逐一對比銷售員和結果值,會發現張三對應的都是TRUE。

因為邏輯值無法直接進行求和,必須轉換為數字才行,轉換的方法就是對邏輯值進行加減乘除之一的任何運算即可。在這個公式中,*1就是這個作用,可以看看效果:

1Excel函數學習之無所不能的SUMPRODUCT!

透過*1運算之後,TRUE都變成了1,而FALSE都變成了0。不要問我為什麼,Excel就是這麼規定的,邏輯值跟數字的對應關係就是這個。

好了,我們先得到一組邏輯值,然後透過*1變成一組數字,再進行求和,就達到了按條件計數的目的。你現在是否已經理解了=SUMPRODUCT((I2:I22="張三")*1)這個公式呢?

現在我們了解到邏輯值,也明白了陣列運算的第一個原則:當一組數與一個數進行計算時,是這組數中的每個資料分別與這一個數進行計算。剛才的公式中就是這樣計算的。

9、不論SUMPRODUCT公式多複雜,全看懂!

咱們再來看看第二個公式:=SUMPRODUCT((MONTH(F2:F22)=3)*(H2:H22="二分店")*( G2:G22="襯衫")*J2:J22)

不要看這個公式長,利用我們剛才學到的知識來破解它的話其實很簡單。公式還是只有一個參數,只不過這個參數是由四個陣列構成的,其中的三組都是邏輯值,分別是(MONTH(F2:F22)=3)、(H2:H22="二分店")和(G2:G22="襯衫")。這三組邏輯值完成三個判斷,分別對應了三個條件:月份=3、店面=二分店和名稱=襯衫。具體內容如圖所示:

1Excel函數學習之無所不能的SUMPRODUCT!

看起來密密麻麻的,但是經過了乘法運算以後,就變成了一堆1和0,結果是這樣的:

1Excel函數學習之無所不能的SUMPRODUCT!

乘積結果只有兩個1,其實對應了三月份二分店襯衫這兩條數據。此時的公式變成了一組邏輯值(已經是0和1了)與一組資料(數量)相乘,再由函數完成求和。

在這個例子中,需要注意數組計算的第二個原則:當多個(含兩個)數組計算時(本例是四個數組),數組中對應位置的資料進行計算,要求數組中包含的資料個數相同。

到現在我們已經了解到數組計算的兩個原則,現舉個簡單的例子來說明:

1Excel函數學習之無所不能的SUMPRODUCT!

一個數組(A1:A9)與一個數據(B1)相乘時,是這組數分別與這個資料相乘;

1Excel函數學習之無所不能的SUMPRODUCT!

#兩個陣列(A1:A9和B1:B9)相乘時,是第一組數與第二組數對應位置的資料相乘。

現在回頭來看這個公式=SUMPRODUCT((MONTH(F2:F22)=3)*(H2:H22="二分店")*(G2:G22="襯衫")* J2:J22),應該沒那麼頭痛了吧。

其實陣列的計算原則還有更複雜的情況,有興趣的朋友可以看看相關的資料,這裡了解簡單原理即可。再來看看第三個公式:=SUMPRODUCT((H2:H22=H​​2)*(G2:G22={"毛衣","襯衫"})*L2:L22)。這個公式看上去跟前面兩個有點差別,(G2:G22={"毛衣","襯衫"})這部分用到了常數數組,其實這個公式本來應該是這樣寫的:=SUMPRODUCT((H2:H22=H​​2)*(G2:G22="毛衣")*L2:L22) SUMPRODUCT((H2:H22=H​​2)*(G2:G22="襯衫")*L2:L22 )

1Excel函數學習之無所不能的SUMPRODUCT!

這個公式用到了兩個SUMPRODUCT函數,第一個是計算總店毛衣的銷售額,第二個是計算總店襯衫的銷售額,分別看應該每個都能理解。兩個SUMPRODUCT函數除了"毛衣"和"襯衫"這裡不同,其他的完全一樣,遇到這種情況,就可以用常數數組把兩個內容放到一起,使公式變得簡潔。

透過今天的講解,我們讀懂了常見的SUMPRODUCT公式,解決了SUMPRODUCT函數運用乘號的困惑,掌握了SUMPRODUCT函數更多的應用。同時,我們也了解到邏輯值和陣列的一些基礎知識——這對我們理解其他的複雜公式有幫助。

相關學習推薦:excel教學

以上是Excel函數學習之無所不能的SUMPRODUCT!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

excel列印表格框線消失怎麼辦 excel列印表格框線消失怎麼辦 Mar 21, 2024 am 09:50 AM

如果在開啟一份需要列印的文件時,在列印預覽裡我們會發現表格框線不知為何消失不見了,遇到這樣的情況,我們就要及時進行處理,如果你的列印文件裡也出現了此類的問題,那麼就和小編一起來學習下邊的課程吧:excel列印表格框線消失怎麼辦? 1.開啟一份需要列印的文件,如下圖所示。  2、選取所有需要的內容區域,如下圖所示。  3、按滑鼠右鍵,選擇「設定儲存格格式」選項,如下圖所示。  4、點選視窗上方的「邊框」選項,如下圖所示。  5、在左側的線條樣式中選擇細實線圖樣,如下圖所示。  6、選擇“外邊框”

excel同時篩選3個以上關鍵字怎麼操作 excel同時篩選3個以上關鍵字怎麼操作 Mar 21, 2024 pm 03:16 PM

在日常辦公中經常使用Excel來處理數據,時常遇到需要使用「篩選」功能。當我們在Excel中選擇執行「篩選」時,對於同一列而言,最多只能篩選兩個條件,那麼,你知道excel同時篩選3個以上關鍵字該怎麼操作嗎?接下來,就請小編為大家示範一次。第一種方法是將條件逐步加入篩選器。如果要同時篩選出三個符合條件的明細,首先需要逐步篩選出其中一個。開始時,可以先依照條件篩選出姓「王」的員工。然後按一下【確定】,接著在篩選結果中勾選【將目前所選內容新增至篩選器】。操作步驟如下圖所示。  同樣,再次分別執行篩選

excel表格相容模式改正常模式的方法 excel表格相容模式改正常模式的方法 Mar 20, 2024 pm 08:01 PM

在我們日常的工作學習中,從他人處拷貝了Excel文件,打開進行內容添加或重新編輯後,再保存的有時候,有時會提示出現兼容性檢查的對話框,非常的麻煩,不知道Excel軟體,可不可改為正常模式呢?那麼下面就由小編為大家帶來解決這個問題的詳細步驟,讓我們一起來學習吧。最後一定記得收藏保存。 1.開啟一個工作表,在工作表的名稱中顯示多出來一個相容模式,如圖所示。 2.在這個工作表中,進行了內容的修改後保存,結果總是彈出兼容檢查器的對話框,很麻煩看見這個頁面,如圖所示。  3、點選Office按鈕,點另存為,然

excel下標怎麼打出來 excel下標怎麼打出來 Mar 20, 2024 am 11:31 AM

e我們常常會用excel來製作一些資料表之類的,有時在輸入參數數值時需要對某個數字進行上標或下標,例如數學公式就會常用到,那麼excel下標怎麼打出來呢?我們一起來看看詳細操作步驟:一、上標方法:1、先Excel中輸入a3(3為上標)。 2、選取數字“3”,右鍵選擇“設定儲存格格式”。 3、點選“上標”,然後“確定”即可。 4、看,效果就是這樣的。二、下標方法:1、與上標設定方法類似,在儲存格中輸入“ln310”(3為下標),選取數字“3”,並右鍵選擇“設定儲存格格式”。 2、勾選“下標”,點選“確定

excel上標應該如何設定 excel上標應該如何設定 Mar 20, 2024 pm 04:30 PM

在處理資料時,有時我們會遇到資料包含了倍數、溫度等等各種符號的時候,你知道excel上標應該如何設定嗎?我們在使用excel處理資料時,如果不會設定上標,這可是會讓我們的許多資料在輸入時就會比較麻煩。今天小編就為大家帶來了excel上標的具體設定方法。 1.首先,讓我們打開桌面上的MicrosoftOfficeExcel文檔,選擇需要修改為上標的文字,具體如圖所示。 2.然後,點擊右鍵,點擊後出現的選單中,選擇「設定儲存格格式」選項,具體如圖所示。 3.接下來,在系統自動彈出的「儲存格格式」對話框

excel中iif函數的用法 excel中iif函數的用法 Mar 20, 2024 pm 06:10 PM

大部分使用者使用Excel都是用來處理表格資料的,其實Excel還有vba程式編寫,這個除了專人士應該沒有多少使用者用過此功能,在vba編寫時常常會用到iif函數,它其實跟if函數的功能差不多,下面小編跟大家介紹下iif函數的用法。 Excel中SQL語句和VBA程式碼中都有iif函數。 iif函數和excel工作表中的IF函數用法相似,執行真假值判斷,根據邏輯計算的真假值,傳回不同結果。 IF函數用法是(條件,是,否)。 VBA中的IF語句和IIF函數,前者IF語句是控制語句可以依照條件執行不同的語句,後者

excel閱讀模式在哪裡設置 excel閱讀模式在哪裡設置 Mar 21, 2024 am 08:40 AM

在軟體的學習中,我們習慣用excel,不僅是因為需要方便,更因為它可以滿足多種實際工作中需要的格式,而且excel運用起來非常的靈活,有種模式是方便閱讀的,今天帶給大家的就是:excel閱讀模式在哪裡設定。 1.開啟電腦,然後再開啟Excel應用,找到目標資料。 2.要想在Excel中,設定閱讀模式,有兩種方式。第一種:Excel中,有大量的便利處理方式,分佈在Excel中佈局中。在Excel的右下角,有設定閱讀模式的快捷方式,找到十字標誌的圖案,點擊即可進入閱讀模式,在十字標誌的右邊有一個小的三

PPT幻燈片插入excel圖示的操作方法 PPT幻燈片插入excel圖示的操作方法 Mar 26, 2024 pm 05:40 PM

1.開啟PPT,翻頁至需要插入excel圖示的頁面。點選插入選項卡。 2、點選【對象】。 3、跳出以下對話框。 4.點選【由檔案建立】,點選【瀏覽】。 5、選擇需要插入的excel表格。 6.點選確定後跳出如下頁面。 7.勾選【顯示為圖示】。 8.點選確定即可。

See all articles