Skip to main content

計算不包含多個值的單元格數量

Author: Siluvia Last Modified: 2025-05-13

通常,使用 COUNTIF 函數很容易計算不包含特定值的單元格數量。本文將逐步介紹如何在 Excel 的指定範圍內計算不包含多個值的單元格數量。

doc-count-cells-do-not-contain-many-values-1


如何計算不包含多個值的單元格?

如下方截圖所示,要計算 B3:B11 範圍內不包含 D3:D4 列出的值的單元格數量,您可以按照以下步驟操作。

doc-count-cells-do-not-contain-many-values-2

通用公式

{=SUM(1-(MMULT(--(ISNUMBER(SEARCH(TRANSPOSE(criteria_range),range))),ROW(criteria_range)^0)>0))}

參數

範圍(必填):您希望計算不包含多個值的單元格所在的範圍。

條件範圍(必填):包含您在計算單元格時希望排除的值的範圍。

注意:此公式必須作為陣列公式輸入。應用公式後,如果公式周圍有大括號包裹,則表示成功創建了陣列公式。

如何使用這個公式?

1. 選擇一個空白單元格來輸出結果。

2. 將以下公式輸入其中,然後同時按下 Ctrl + Shift + Enter 鍵以獲得結果。

=SUM(1-(MMULT(--(ISNUMBER(SEARCH(TRANSPOSE(D3:D4),B3:B11))),ROW(D3:D4)^0)>0))

doc-count-cells-do-not-contain-many-values-3

這些公式是如何工作的?

=SUM(1-(MMULT(--(ISNUMBER(SEARCH(TRANSPOSE(D3:D4),B3:B11))),ROW(D3:D4)^0)>0))

1) --(ISNUMBER(SEARCH(TRANSPOSE(D3:D4),B3:B11)))

  • TRANSPOSE(D3:D4):TRANSPOSE 函數旋轉 D3:D4 的方向並返回 {“count”,”blank”}
  • SEARCH({“count”,”blank”},B3:B11):這裡的 SEARCH 函數從範圍 B3:B11 中查找子字串 “count” 和 “blank”,並返回一個陣列 {#VALUE!,#VALUE!;#VALUE!,#VALUE!;1,#VALUE!;#VALUE!,8;1,#VALUE!;#VALUE!,#VALUE!;#VALUE!,#VALUE!;1,
    #VALUE!;1,7}
  • 在此情況下,由於在計算單元格時需要排除兩個值,因此會對 B3:B11 中的每個單元格進行兩次搜索,所以陣列中會得到 18 個值。陣列中的每個數字表示 “count” 或 “blank” 在 B3:B11 每個單元格中第一個字符的位置。
  • ISNUMBER{#VALUE!,#VALUE!;#VALUE!,#VALUE!;1,#VALUE!;#VALUE!,8;1,#VALUE!;#VALUE!,#VALUE!;#VALUE!,


    #VALUE!;1,#VALUE!;1,7}
    :ISNUMBER 函數在遇到陣列中的數字時返回 TRUE,在遇到錯誤時返回 FALSE。這裡返回的結果為 {FALSE,FALSE;FALSE,FALSE;TRUE,FALSE;FALSE,TRUE;TRUE,FALSE;FALSE,FALSE;FALSE,FALSE;TRUE,FALSE;
    TRUE,TRUE}
  • --({FALSE,FALSE;FALSE,FALSE;TRUE,FALSE;FALSE,TRUE;TRUE,FALSE;FALSE,FALSE;FALSE,FALSE;TRUE,


    FALSE;TRUE,TRUE})
    :這兩個減號將 “TRUE” 轉換為 1,將 “FALSE” 轉換為 0。這裡會得到一個新陣列 {0,0;0,0;1,0;0,1;1,0;0,0;0,0;1,0;1,1}。

2) ROW(D3:D4)^0:ROW 函數返回單元格引用的行號:{3;4},然後指數運算符 (^) 返回數字 3 和 4 升到 0 次方的結果,最後返回結果為 {1;1}

3) MMULT({0,0;0,0;1,0;0,1;1,0;0,0;0,0;1,0;1,1},{1;1})MMULT 函數返回這兩個陣列的矩陣乘積:{0;0;1;1;1;0;0;1;2} 以符合原始數據。陣列中的任何非零數字表示至少找到一個排除的字符串,而零表示未找到排除的字符串。

4) SUM(1-{0;0;1;1;1;0;0;1;2}>0)

  • {0;0;1;1;1;0;0;1;2}>0:這裡檢查陣列中的每個數字是否大於 0。如果數字大於 0,則返回 TRUE,否則返回 FALSE。然後會得到一個新陣列 {FALSE;FALSE;TRUE;TRUE;TRUE;FALSE,FALSE,TRUE;TRUE}
  • 1-{FALSE;FALSE;TRUE;TRUE;TRUE;FALSE,FALSE,TRUE;TRUE}:由於我們只需要計算不包含指定值的單元格,因此需要通過從 1 減去陣列中的值來反轉它們。這裡的數學運算符自動將 TRUE 和 FALSE 值轉換為 1 和 0,最終返回結果為 {1;1;0;0;0;1;1;0;0}
  • SUM{1;1;0;0;0;1;1;0;0}:SUM 函數將陣列中的所有數字相加並返回最終結果為 4。

相關函數

Excel SUM 函數
Excel SUM 函數用於將數值相加。

Excel MMULT 函數
Excel MMULT 函數返回兩個陣列的矩陣乘積。

Excel ISNUMBER 函數
Excel ISNUMBER 函數當單元格包含數字時返回 TRUE,否則返回 FALSE。

Excel TRANSPOSE 函數
Excel TRANSPOSE 函數用於旋轉範圍或陣列的方向。

Excel ROW 函數
Excel ROW 函數返回引用的行號。


相關公式

計算不包含錯誤的單元格數量
本教程提供詳細步驟,幫助您計算 Excel 中指定範圍內不包含錯誤的單元格數量。

計算不包含特定文本的單元格數量
您可以使用帶有萬用字元的 COUNTIF 函數來計算範圍內包含特定文本的單元格數量。相反地,也很容易使用 COUNTIF 函數來計算不包含特定文本的單元格數量。本教程提供詳細步驟來幫助解決問題。

按星期幾計算範圍內日期單元格的數量
Excel 提供了 SUMPRODUCT 和 WEEKDAY 函數的組合,幫助我們輕鬆計算範圍內指定星期幾的數量。本教程提供了逐步指南來幫助您完成操作。

計算包含文本的單元格數量
要計算指定範圍內包含文本的單元格數量,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 一樣。