本教學由作者茂伯編寫,並由作者在 Windows 版 Microsoft 365 與 Excel 2021 實際操作驗證。
學會先限定同一列的區域與類別,再從符合的數值中找出最大值。你會區分篩選條件與數值範圍,能逐列說明哪些資料留下、哪些排除,並理解找不到符合項目時的零不能直接當成實際業績紀錄。
什麼時候會用到
多個區域共用一份業績表時,只比較北區指定類別,避免其他區域或其他類別的數字混入結果,讓報表的比較對象一致。
資料需要同時符合類別與數值門檻時,先把條件列清楚,再尋找其中最大的數字;取得結果後仍保留原始表以便追查是哪一筆。
適用版本
官方列明本函數適用於Microsoft 365,以及Excel 2019、2021、2024的Windows或Mac版本。
Excel 2016永久授權版不支援本函數;本課在支援版本直接按Enter計算,不需特殊陣列輸入。
先準備範例資料
開啟空白活頁簿,依下表輸入對應儲存格。表中「(空白)」代表儲存格留空,請勿輸入括號內的文字。
| 列 | A | B | C |
|---|---|---|---|
| 1 | 區域 | 通路 | 業績 |
| 2 | 北區 | 門市 | 120 |
| 3 | 北區 | 網路 | 200 |
| 4 | 南區 | 門市 | 300 |
| 5 | 北區 | 門市 | 180 |
| 6 | 南區 | 網路 | 250 |
| 7 | 北區 | 門市 | 150 |
| 8 | 北區 | 網路 | 220 |
A1:C8是原始資料。A欄區域、B欄通路、C欄業績同一列配成一筆紀錄;C欄輸入純數字,不把單位一起打入。
第2、5、7列同時是北區及門市,對應C欄為120、180、150。主結果只在這三個數字中比較,不是先找全表最大值。
第3與第8列是北區,但類別是網路;第4與第6列則屬南區。它們都不能因數字更突出就被納入主結果。
每個參照都從第2列到第8列,各有七格;除了長度相同,也要保持相同紀錄位置,不能只移動某一欄後仍期待原本配對成立。
輸入這個公式
在 E2 輸入以下公式,按 Enter。
=MAXIFS(C2:C8,A2:A8,"北區",B2:B8,"門市")
輸入位置:E2 正確結果:180
語法與引數
=MAXIFS(max_range,criteria_range1,criteria1,[criteria_range2,criteria2],...)
引數就是交給函數處理的資料或設定。語法中的 [ ] 表示可以省略,輸入公式時不要打出方括號或省略號。
max_range 必要。要找最大值的數字範圍,本例C2:C8,放在第一個參數。
criteria_range1 必要。第一個要檢查條件的範圍,本例A2:A8。各範圍的大小與形狀都要與數值範圍相同。
criteria1 必要。第一個條件,本例是"北區"。文字及含比較符號的條件要包半形雙引號,數字或條件儲存格也可使用。
[criteria_range2,criteria2],... 選填其他條件組。本例加入B2:B8,"門市";每組範圍後緊跟它的條件。最多再加126組,合計127組,所有條件須同時成立。
公式使用半形標點;部分地區設定以分號分隔引數,請依 Excel 的提示調整。
照著做並核對畫面
- 新增一張空白工作表,點選 A1,依資料表輸入到 C8。第一列是標題,第2至第8列才是七筆紀錄;數字欄只輸入數字,單位留在標題或說明中。
- 在公式列左側的名稱方塊輸入 A1:C8,按 Enter 檢查資料的位置。確認C2、C5、C7依序為120、180、150,它們是主題目的候選數字。 若貼上後擠在同一格,先重新分欄輸入,確認每個欄位各占一欄。
- 點選 E1,輸入「北區門市最高業績」。再點選 E2,確保結果放在原始資料右側,不覆蓋資料,也不把 E2 自己包含在計算範圍內。
- 切換半形英數輸入,在 E2 完整輸入 =MAXIFS(C2:C8,A2:A8,"北區",B2:B8,"門市")。輸入完成先核對函數拼字、冒號與左右括號,再按 Enter;請勿把語法說明中的方括號輸入公式。
- 確認 E2 顯示 180,再重新點選 E2。公式列應顯示 =MAXIFS(C2:C8,A2:A8,"北區",B2:B8,"門市"),儲存格則顯示答案;若答案不同,先核對資料與範圍,不要直接把答案數字覆寫進 E2。

圖 1 Excel 網頁版實際操作畫面。Windows 桌面版工具列外觀可能不同。
結果解讀
先看A欄,北區在第2、3、5、7、8列。南區兩列先排除,不拿它們的業績參加比較。
再看這五列B欄,只保留門市的第2、5、7列,取得120、180、150。
比較這三個數字,180大於120與150,所以E2回傳180。結果是數值,不會自動回傳所在列或名稱。
多組條件之間是「而且」,不是任何一組符合都算。同一個範圍也能重複指定,分別設定上下限,但每組仍須寫出範圍與條件。
完全沒有符合條件的紀錄時,函數會回傳0。看到0先核對條件是否找得到資料,再判斷業務上是否真的存在零值;不可直接宣稱有一筆零紀錄。
同樣大小的範圍會依位置配對,不會按列標題或名稱自動找回正確紀錄。本課刻意統一第2至第8列,讓每組條件都對準同一筆。
常見錯誤
- 顯示#VALUE!
原因:數值範圍與某個條件範圍長度或形狀不同。 處理:重新點E2,在公式列把所有範圍核對為同一欄、第2列到第8列。
- 顯示0,與預期不同
原因:條件可能不存在,例如區域名稱打錯,導致沒有任何符合紀錄。 處理:核對A欄北區與B欄門市,確認第2、5、7列都符合;不要先把0當成真實業績。
- 顯示#NAME?或名稱前有_xlfn.
原因:可能函數名稱拼錯,或目前Excel版本不支援。 處理:檢查拼字並確認使用Microsoft 365或Excel 2019以上;舊版需在支援的版本開啟。
自己試一次
先遮住解答,試著自己輸入公式並預測結果。每題都從上方的原始資料重新開始,結果放在題目指定的儲存格。
練習 1 改看南區
先恢復本課原始資料。在E2求南區且門市的最大業績。
參考公式:
=MAXIFS(C2:C8,A2:A8,"南區",B2:B8,"門市")
正確結果:300
解答 1 第4列同時符合南區與門市,其餘列都排除。
解答 2 只有一個候選數值,因此答案是300,仍是合法結果。
練習 2 更新符合列
先恢復本課原始資料。只把C7改成240,在E2重新計算主題目。
參考公式:
=MAXIFS(C2:C8,A2:A8,"北區",B2:B8,"門市")
正確結果:240
解答 1 條件欄沒有改變,仍留下第2、5、7列,但第7列數值更新為240。
解答 2 重新比較後,240成為這三筆的最大值。
練習 3 找不到的區域
先恢復本課原始資料。在E2尋找東區且門市的最大業績,資料不修改。
參考公式:
=MAXIFS(C2:C8,A2:A8,"東區",B2:B8,"門市")
正確結果:0
解答 1 A2:A8沒有東區,所以沒有任何一列可通過全部條件。
解答 2 結果為0,意思是此次沒有符合紀錄,不能據此新增一筆零值。