Skip to main content

Excel SUMPRODUCT 函數

Author: Xiaoyang Last Modified: 2025-08-06

在 Excel 中,SUMPRODUCT 函數可以用來將兩列或多列或陣列相乘,然後得到乘積的總和。實際上,SUMPRODUCT 是一個非常有用的函數,可以幫助根據多個條件來計數或求和單元格值,類似於 COUNTIFS 或 SUMIFS 函數。本文將介紹該函數的語法以及一些 SUMPRODUCT 函數的範例。

show the usage of SUMPRODUCT function


語法:

Excel 中 SUMPRODUCT 函數的語法為:

=SUMPRODUCT (array1, [array2], ...)

參數:

  • array1: 必填。您要相乘然後相加的第一個陣列或單元格範圍。
  • array2: 可選。您要相乘然後相加的第二個陣列或單元格範圍。

注意事項:

  • 1. 如果您的範圍內有非數值,SUMPRODUCT 會將它們視為零。
  • 2. 如果陣列或範圍的行數和列數不同,SUMPRODUCT 函數將返回 #VALUE! 錯誤。
  • 3. 如果陣列中有邏輯測試,它們將生成 TRUE 和 FALSE 值。在大多數情況下,您需要通過使用雙負號運算符(--)將它們轉換為 1 和 0。
  • 4. 在 Excel 2007 及更高版本中,SUMPRODUCT 函數最多可以處理 255 個參數,而在早期的 Excel 版本中只能處理 30 個參數。
  • 5. SUMPRODUCT 不支持通配符字符。

返回值:

返回相乘並相加後的陣列結果。


範例:

範例 1:SUMPRODUCT 函數的基本用法

SUMPRODUCT 的基本用途是先將兩列相乘,然後將其加起來。例如,假設您有以下截圖中的數據,現在您想將訂單數量與單價相乘,然後將所有相乘的結果加在一起以獲得總價。

show the usage of SUMPRODUCT function

要完成此任務,請應用以下公式:

=SUMPRODUCT(B2:B7,C2:C7)

解釋:這個公式 SUMPRODUCT(B2:B7,C2:C7) = B2*C2+B3*C3+B4*C4+B5*C5+B6*C6+B7*C7

然後按下 Enter 鍵,B 列中的單元格將乘以其所在行 C 列中對應單元格的值,並將結果加起來。請看截圖:

show the usage of SUMPRODUCT function


範例 2:使用 SUMPRODUCT 函數對具有多個條件的單元格求和

除了使用 SUMIFS 函數根據多個條件來求和單元格值外,SUMPRODUCT 函數也可以快速輕鬆地解決這個問題。


案例 1:如果另一列包含特定文字則對單元格求和

假設,您有一個如下截圖所示的數據表,現在您想計算產品為 KTE 且名稱為 David 時的總價,如何在 Excel 中使用 SUMPRODUCT 公式來實現呢?

show the usage of SUMPRODUCT function

1. 請在空白單元格中輸入或複製以下任一公式:

=SUMPRODUCT(--(A2:A12="KTE"), --(B2:B12="David"), D2:D12)
=SUMPRODUCT((A2:A12="KTE")*(B2:B12="David")*D2:D12)
  • 提示:在上述公式中:
  • A2:A12="KTE": 是第一個條件範圍及條件,您希望基於此進行求和。
  • B2:B12="David": 是第二個條件範圍及條件,您希望基於此進行求和。
  • D2:D12: 是您希望求和的單元格範圍。

2. 然後,按下 Enter 鍵即可獲得所需的結果:

show the usage of SUMPRODUCT function


案例 2:使用 OR 邏輯對具有多個條件的單元格求和

要根據多個條件使用 OR 邏輯對單元格求和,您應該在 SUMPRODUCT 函數中使用加號 (+) 來連接多個條件。

例如,我想在 A 列中對產品 KTE 和 KTO 的總價進行求和,如下截圖所示:

show the usage of SUMPRODUCT function

請在空白單元格中應用以下公式:

=SUMPRODUCT((A2:A12="KTE")+(A2:A12="KTO"), C2:C12)

然後按下 Enter 鍵,產品 KTE 和 KTO 的總價已經被計算出來了,請看截圖:

show the usage of SUMPRODUCT function


案例 3:使用 OR 和 AND 邏輯對具有多個條件的單元格求和

在某些情況下,您可能需要同時使用 OR 和 AND 邏輯來對單元格求和。SUMPRODUCT 函數也能輕鬆解決這個問題。

星號 (*) 作為 AND 運算符。

加號 (+) 作為 OR 運算符。

讓我們看一個例子,當銷售額大於 200 時,計算產品 KTE 和 KTO 的總價。

show the usage of SUMPRODUCT function

您應該複製或輸入以下公式:

=SUMPRODUCT((B2:B12>200)*((A2:A12="KTE")+(A2:A12="KTO"))*C2:C12)

然後按下 Enter 鍵即可獲得所需的結果:

show the usage of SUMPRODUCT function


範例 3:使用 SUMPRODUCT 函數對具有多個條件的單元格進行計數

通常,SUMPRODUCT 函數還可以幫助我們在 Excel 中根據多個條件來計數單元格。與求和值相同,您只需從公式中刪除 sum_range 參數即可。


案例 1:使用 AND 邏輯對具有多個條件的單元格進行計數

這裡,我想計數產品為 KTE 且銷售額大於 200 的單元格。因此,請使用以下任一公式:

=SUMPRODUCT(--(A2:A12="KTE"), --(B2:B12>200))
=SUMPRODUCT((A2:A12="KTE")*(B2:B12>200))
  • 提示:在上述公式中:
  • A2:A12="KTE": 是第一個條件範圍及條件,您希望基於此進行計數。
  • B2:B12>200: 是第二個條件範圍及條件,您希望基於此進行計數。

然後,按下 Enter 鍵即可獲得結果的數字:

show the usage of SUMPRODUCT function


案例 2:使用 OR 邏輯對具有多個條件的單元格進行計數

要計數 A 列中產品 KTE 和 KTO 的數量,請應用此公式:

=SUMPRODUCT((A2:A12="KTE")+(A2:A12="KTO"))

然後按下 Enter 鍵即可獲得產品 KTE 和 KTO 的數量。請看截圖:

show the usage of SUMPRODUCT function


案例 3:使用 OR 和 AND 邏輯對具有多個條件的單元格進行計數

要計數銷售額大於 200 的產品 KTE 和 KTO 的數量,您應該應用以下公式:

=SUMPRODUCT((B2:B12>200)*((A2:A12="KTE")+(A2:A12="KTO")))

然後,按下 Enter 鍵即可獲得所需的結果數字:

show the usage of SUMPRODUCT function


範例 4:使用 SUMPRODUCT 函數計算加權平均值

通常,我們可以快速輕鬆地計算單元格範圍的平均值。但是,如果您想計算具有不同相關性級別的值列表的平均值,這意味著要計算加權平均值。在 Excel 中沒有直接的函數來獲取它。但 SUMPRODUCT 函數可以幫助您處理它。

例如,我有一個學生的成績統計表,每個任務都有不同的權重,如下截圖所示。

show the usage of SUMPRODUCT function

要計算加權平均值,請使用以下公式:

=SUMPRODUCT(B2:B6, C2:C6) / SUM(C2:C6)

解釋:這個公式:SUMPRODUCT(B2:B6, C2:C6) / SUM(C2:C6) = (B2*C2+B3*C3+B4*C4+B5*C5+B6*C6)/(C2+C3+C4+C5+C6)

然後按下 Enter 鍵,加權平均值立即被計算出來,請看截圖:

show the usage of SUMPRODUCT function


更多關於 SUMPRODUCT 函數的文章:

  • 跨多個工作表計數特定值
  • 假設,我有多個工作表,其中包含以下數據,現在我想獲得多個工作表中特定值“Excel”的出現次數。如何跨多個工作表計數特定值?
  • 在 Excel 中計算加權平均值
  • 例如,您有一個購物清單,包含價格、重量和數量。您可以使用 Excel 中的 AVERAGE 函數輕鬆計算平均價格。但如果要計算加權平均價格呢?在本文中,我將介紹一種計算加權平均值的方法,以及一種在 Excel 中根據特定條件計算加權平均值的方法。

最佳的辦公生產力工具

Kutools for Excel - 幫助您脫穎而出

🤖 KUTOOLS AI 助手:基於以下方式徹底改變數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 KUTOOLS 函數
熱門功能查找、標記或標識重複值  |  刪除空行  |  合併列或單元格而不丟失數據  |  無需公式四捨五入 ...
超級 VLookup多條件  |  多值  |  跨多工作表  |  模糊查找...
高級下拉列表簡易下拉列表  |  依賴下拉列表  |  多選下拉列表...
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  比較列以選擇相同和不同的單元格 ...
特色功能網格聚焦  |  設計檢視  |  增強編輯欄  |  工作簿與工作表管理器 | 資源庫 (自動文字)  |  日期提取器  |  合併資料  |  加密/解密單元格  |  按清單發送電子郵件  |  超級篩選  |  特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 個工具集12 個文本工具添加文本刪除特定字符 ...)  |  50+ 種圖表 類型甘特圖 ...)  |  40+ 實用 公式基於生日計算年齡 ...)  |  19 個插入工具插入QR碼從路徑插入圖片 ...)  |  12 個轉換工具金額轉大寫匯率轉換 ...)  |  7 個合併與分割工具高級合併行拆分Excel單元格 ...)  |  ... 及更多
使用您偏好的語言來操作 Kutools——支持英語、西班牙語、德語、法語、中文等 40 多種語言!

Kutools for Excel 擁有超過 300 項功能,確保您需要的功能只需一鍵即可觸及...


Office Tab - 在 Microsoft Office(包括 Excel)中啟用多標籤閱讀和編輯

  • 一秒鐘內在數十個打開的文檔之間切換!
  • 每天為您減少數百次鼠標點擊,告別滑鼠手。
  • 在查看和編輯多個文檔時,提升您的效率達 50%。
  • 為 Office(包括 Excel)帶來高效的標籤功能,就像 Chrome、Edge 和 Firefox 一樣。