Excel篩選公式全攻略:FILTER、SORT、SORTBY語法解析與實務應用

本篇完整介紹Excel篩選公式的語法、參數、常見錯誤與實務案例,並比較傳統篩選與新式公式的差異,協助你靈活運用FILTER、SORT、SORTBY提升數據分析與報表自動化能力。

Notion 新創專屬 3 個月免費福利| 官方合作夥伴限定

經本站專屬連結申請,即享 3 個月 Notion Plus + AI 無限免費 (市價 $6,000 美元)! 務必保留推薦碼 venturer ,否則不符資格。 全程免費,無需信用卡。需用公司 Email 與有效公司網站。
免費使用

200+模板自動化工作流程

從數據到成果,只需一步 — 用Monday代替Excel,效率倍增!
免費使用

AI智能團隊協作

AI驅動的ClickUp超越Excel,讓工作更精準快速!
免費使用

Excel篩選公式總覽

Excel在資料分析與管理上扮演關鍵角色,尤其是篩選與排序功能。傳統的「篩選」與「進階篩選」雖然直觀,但在動態資料、複雜條件或自動化需求下,往往力有未逮。自Excel 365與Excel 2021起,新增的篩選公式(如FILTER、SORT、SORTBY)大幅提升了彈性與效率,讓用戶能以公式自動產生動態結果,無需手動操作。

主要優勢:
– 支援多條件篩選與排序
– 結果自動隨原始資料變動即時更新
– 可與其他函數結合,實現複雜查詢與自動化
– 適用於Excel 365、Excel 2021及以上版本

與傳統篩選比較:
| 功能 | 傳統篩選 | 篩選公式(FILTER等) |
|——————-|——————|————————–|
| 操作方式 | 需手動點選 | 以公式自動產生 |
| 多條件篩選 | 較複雜 | 公式靈活設定 |
| 動態更新 | 需重新操作 | 自動即時更新 |
| 自動化報表 | 不易 | 容易 |
| 支援版本 | 所有版本 | 365、2021及以上 |

常用篩選與排序公式介紹

FILTER 函數語法與範例

語法:
=FILTER(array, include, [if_empty])

  • array:要篩選的資料範圍。
  • include:邏輯條件,決定哪些資料會被保留。
  • [if_empty]:當無符合條件資料時顯示的內容(可省略)。

單條件篩選範例:
假設A2:A10為分數,篩選出大於80分的名單:
=FILTER(A2:A10, A2:A10>80, "無符合資料")

多條件篩選範例:
篩選B欄部門為「業務」且C欄分數大於80:
=FILTER(A2:C10, (B2:B10="業務")*(C2:C10>80), "無符合資料")

空值與錯誤處理:
若找不到資料,預設會顯示錯誤。可用[if_empty]參數自訂顯示內容,或搭配IFERROR:
=IFERROR(FILTER(...), "查無資料")

實務案例:部門名單篩選
某公司人資需即時取得「行銷部」且「績效分數超過90」的員工名單,只需設定:
=FILTER(A2:D100, (B2:B100="行銷部")*(D2:D100>90), "無")
當人員異動或分數更新時,名單自動同步。

常見錯誤:
– #CALC!:多數為無資料符合條件,請檢查條件或補上[if_empty]參數。
– #VALUE!:條件範圍與資料範圍大小不一致。

SORT 函數語法與範例

語法:
=SORT(array, [sort_index], [sort_order], [by_col])

  • array:要排序的資料範圍。
  • [sort_index]:依第幾欄排序(預設1)。
  • [sort_order]:1為升序,-1為降序(預設升序)。
  • [by_col]:TRUE為橫向排序,FALSE為直向(預設FALSE)。

單欄排序範例:
將A2:B10依B欄分數由高到低排序:
=SORT(A2:B10, 2, -1)

多欄排序範例:
先依B欄部門升序,再依C欄分數降序:
=SORT(A2:C10, {2,3}, {1,-1})

實務案例:銷售排名
銷售團隊每月業績表,主管需自動取得最新排名:
=SORT(A2:C50, 3, -1)
只要資料更新,排名即時變動。

常見錯誤:
– #VALUE!:排序欄位超出範圍或參數錯誤。

SORTBY 函數語法與範例

語法:
=SORTBY(array, by_array1, sort_order1, [by_array2, sort_order2], ...)

  • array:要排序的資料範圍。
  • by_array1:依此欄(或列)排序。
  • sort_order1:1為升序,-1為降序。

與SORT差異:
SORTBY可針對任意欄位排序,且排序依據可與資料範圍不連續,彈性更高。

範例:依部門排序,再依分數降序
=SORTBY(A2:C20, B2:B20, 1, C2:C20, -1)

實務案例:多條件名單排序
人資需依「部門」升序,再依「入職日期」升序排出名單:
=SORTBY(A2:D100, B2:B100, 1, D2:D100, 1)

常見錯誤:
– #VALUE!:排序依據範圍大小不符或參數錯誤。

進階應用技巧

多條件篩選與動態篩選

多條件寫法:
可用*(AND)、+(OR)組合條件。例如:
– AND條件:=FILTER(A2:D20, (B2:B20="行銷")*(C2:C20>80))
– OR條件:=FILTER(A2:D20, (B2:B20="行銷")+(C2:C20>80))

動態篩選:
可將條件設為儲存格參照,讓用戶輸入條件自動變動。
例如:=FILTER(A2:D20, B2:B20=F1),F1為部門名稱。

產業應用情境:
– 客服團隊根據「地區」與「回覆時效」自動篩選待處理案件。
– 學校老師根據「班級」與「成績」動態查詢學生名單。

與其他函數結合應用

IFERROR搭配
避免無資料時出現錯誤訊息。
=IFERROR(FILTER(...), "查無資料")

INDEX、MATCH結合
可用於進階查找與動態篩選。例如:
找出指定姓名的分數:
=INDEX(C2:C20, MATCH("王小明", A2:A20, 0))

產業應用情境:
– 行政人員自動查找指定員工的聯絡方式。
– 銷售主管根據產品名稱動態查詢庫存。

常見錯誤與排解方法

錯誤訊息 可能原因與解決方式
#CALC! 無符合條件資料,請檢查條件或補上[if_empty]參數
#VALUE! 範圍大小不一致或參數格式錯誤
#SPILL! 結果區域有阻擋,請清空下方儲存格
#NAME? 公式拼寫錯誤或版本不支援

排解建議:
– 檢查公式拼寫、範圍大小、參數格式。
– 確認Excel版本是否支援篩選公式。
– 結果區域需有足夠空間。

篩選公式實務案例

篩選銷售報表

情境:
銷售主管需取得「北區」且「本月業績超過10萬」的業務名單。

公式:
=FILTER(A2:E100, (B2:B100="北區")*(E2:E100>100000), "無")

效益:
名單隨時自動更新,方便獎勵或追蹤。

名單管理與動態查詢

情境:
人資需依「部門」與「職等」動態查詢員工名單,條件由F1、G1輸入。

公式:
=FILTER(A2:D100, (B2:B100=F1)*(C2:C100=G1), "查無資料")

效益:
方便即時查詢、統計或通知。

自動化報表更新

情境:
財務部門需根據「月份」自動產生當月收支明細。

公式:
=FILTER(A2:F100, B2:B100=H1, "無資料")
(H1為指定月份)

效益:
報表自動更新,減少人工整理。

Excel篩選公式常見問題FAQ

Q1:哪些Excel版本支援FILTER、SORT、SORTBY?
A:僅Excel 365、Excel 2021及以上版本支援,舊版Excel(如2016、2019)不支援。

Q2:如何設定多條件篩選?
A:可用*(AND)、+(OR)組合條件,例如=FILTER(A2:B10, (B2:B10="A")*(C2:C10>80))

Q3:找不到符合條件資料時如何顯示自訂訊息?
A:可用FILTER的第三參數或搭配IFERROR,例如=FILTER(..., "查無資料")=IFERROR(FILTER(...), "查無資料")

Q4:FILTER出現#CALC!怎麼辦?
A:通常是無資料符合條件,請檢查條件設定,或補上[if_empty]參數。

Q5:如何避免結果區域被阻擋?
A:確保公式輸出區域下方(或右方)無其他資料,否則會出現#SPILL!錯誤。

結語與工具推薦

運用Excel篩選公式(FILTER、SORT、SORTBY),不僅能大幅提升數據分析與報表自動化效率,也讓日常名單管理、動態查詢變得輕鬆靈活。若你在專案管理、團隊協作或跨部門數據整合上有更高需求,建議可結合如Monday.com這類專業協作平台,將Excel篩選結果與專案追蹤、任務分派無縫串接,進一步提升團隊整體生產力與數據透明度。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

✨ 讓專案管理變簡單,團隊更強大!

在專案推進的每一步,效率就是競爭力。monday.com 整合進度追蹤、團隊協作與資源分配,讓你隨時掌握全局、快速解決問題。
全球18萬家專業團隊已經採用,你還在等什麼?