計算 Excel 中包含特定值的行數
Author: Xiaoyang Last Modified: 2025-05-12
對我們來說,在 Excel 工作表中計算具有特定值的單元格數量可能很容易。然而,要獲取包含特定值的行數可能會相當複雜。在這種情況下,一個基於 SUM、MMULT、TRANSPOSE 和 COLUMN 函數的更複雜公式可能會對您有所幫助。本教程將討論如何創建這個公式來處理 Excel 中的這項工作。
計算包含特定值的行數
例如,您在工作表中有一個值範圍,現在您需要計算包含給定值“300”的行數,如下圖所示:
要獲取包含特定值的行數,通用語法是:
{=SUM(–(MMULT(–(data=X),TRANSPOSE(COLUMN(data)))>0))}
陣列公式,應同時按下 Ctrl + Shift + Enter 鍵。
陣列公式,應同時按下 Ctrl + Shift + Enter 鍵。
- 數據:要檢查是否包含特定值的單元格範圍;
- X:用於計算行數的特定值。
1. 請在您希望放置結果的空白單元格中輸入或複製以下公式:
=SUM(--(MMULT(--($A$2:$C$12=300),TRANSPOSE(COLUMN($A$2:$C$12)))>0))
2. 然後同時按下 Ctrl + Shift + Enter 鍵以獲得正確的結果,請參見截圖:
公式的解釋:
=SUM(--(MMULT(--($A$2:$C$12=300),TRANSPOSE(COLUMN($A$2:$C$12)))>0))
- --$A$2:$C$12=300:此表達式檢查值“300”是否存在於範圍 A2:C12 中,並將生成一個 TRUE 和 FALSE 的陣列結果。雙負號用於將 TRUE 轉換為 1,FALSE 轉換為 0。因此,您將得到這樣的結果:{0,0,0;1,0,0;0,0,0;0,1,1;0,0,0;0,1,0;0,0,0;1,0,0;0,0,1;0,0,0;1,1,1}。這個由 11 行和 3 列組成的陣列將作為 MMULT 函數中的 array1。
- TRANSPOSE(COLUMN($A$2:$C$12)):這裡的 COLUMN 函數用於獲取範圍 A2:C12 的列號,它返回一個像這樣的 3 列陣列:{1,2,3}。然後 TRANSPOSE 函數將這個陣列轉置為一個 3 行陣列 {1;2;3},作為 MMULT 函數中的 array2。
- MMULT(--($A$2:$C$12="Joanna"),TRANSPOSE(COLUMN($A$2:$C$12))):此 MMULT 函數返回上述兩個陣列的矩陣乘積,您將得到這樣的結果:{0;1;0;5;0;2;0;1;3;0;6}。
- SUM(--(MMULT(--($A$2:$C$12="Joanna"),TRANSPOSE(COLUMN($A$2:$C$12)))>0))= SUM(--{0;1;0;5;0;2;0;1;3;0;6}>0):首先,檢查陣列中大於 0 的值:如果值大於 0,則顯示 TRUE;如果小於 0,則顯示 FALSE。然後雙負號將 TRUE 和 FALSE 強制轉換為 1 和 0,因此您將得到這樣:SUM({0;1;0;1;0;1;0;1;1;0;1})。最後,SUM 函數將陣列中的值相加以返回結果:6。
提示:
如果您需要計算工作表中包含特定文本的行數,請應用以下公式,並記住同時按下 Ctrl + Shift + Enter 鍵以獲得總計數:
=SUM(--(MMULT(--(ISNUMBER(SEARCH("Joanna",A2:C12))),TRANSPOSE(COLUMN($A$2:$C$12)))>0))
相關函數使用:
- SUM:
- Excel SUM 函數返回提供的值的總和。
- MMULT:
- Excel MMULT 函數返回兩個陣列的矩陣乘積。
- TRANSPOSE:
- TRANSPOSE 函數將根據某個單元格範圍返回一個新方向的陣列。
- COLUMN:
- COLUMN 函數返回公式出現的列號或返回給定引用的列號。
更多文章:
- 滿足內部條件時計算行數
- 假設,您有一份今年和去年產品銷售的報告,現在您可能需要計算今年銷售額大於去年的產品數量,或者今年銷售額小於去年的產品數量,如下圖所示。通常,您可以添加一個輔助列來計算兩年之間的銷售差異,然後使用 COUNTIF 來獲取結果。但是,本文將介紹如何使用 SUMPRODUCT 函數直接獲取結果而無需任何輔助列。
- 滿足多個條件時計算行數
- 根據多個條件計算範圍內的行數,其中一些條件取決於在行級別工作的邏輯測試,Excel 中的 SUMPRODUCT 函數可能會對您有所幫助。
- 計算等於多個值之一的單元格數量
- 假設,我在 A 列中有一個產品列表,現在我想從範圍 C4:C6 中列出的 Apple、Grape 和 Lemon 獲取這些特定產品的總數,如下圖所示。通常,在 Excel 中,簡單的 COUNTIF 和 COUNTIFS 函數在此場景中不起作用。本文將介紹如何使用 SUMPRODUCT 和 COUNTIF 函數的組合快速輕鬆地解決此問題。
最佳的辦公生產力工具
Kutools for Excel - 幫助您脫穎而出
? | Kutools AI 助手:基於智能執行、生成代碼、創建自訂公式、分析數據並生成圖表、調用 Kutools 函數…來徹底改變數據分析方式。 |
熱門功能:查找、標記或識別重複值 | 刪除空行 | 合併列或單元格而不丟失數據 | 四捨五入無需公式 ... | |
超級 VLookup:多條件 | 多值 | 跨多工作表 | 模糊查找... | |
高級下拉列表:簡易下拉列表 | 依賴下拉列表 | 多選下拉列表... | |
列管理器:添加特定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 比較列以選擇相同和不同的單元格 ... | |
特色功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿與工作表管理器 | 資源庫(自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/斜體/刪除線...) ... | |
頂級 15 種工具集: 12 個文字工具(添加文本、刪除特定字符 ...) | 50+ 圖表 類型(甘特圖 ...) | 40+ 實用 公式(基於生日計算年齡 ...) | 19 個插入工具(插入QR碼、從路徑插入圖片 ...) | 12 個轉換工具(金額轉大寫、匯率轉換 ...) | 7 個合併與分割工具(高級合併行、分割Excel單元格 ...) | ... 還有更多 |
Kutools for Excel 擁有超過 300 種功能,確保您需要的功能只需點擊一下即可實現...
Office Tab - 啟用 Microsoft Office(包括 Excel)中的分頁閱讀和編輯功能
- 一秒鐘內在數十個打開的文檔之間切換!
- 每天為您減少數百次鼠標點擊,告別滑鼠手。
- 當查看和編輯多個文檔時,您的工作效率提高 50%。
- 為 Office(包括 Excel)帶來高效的分頁功能,就像 Chrome、Edge 和 Firefox 一樣。