Excel 教學:MATCH 函數
1. MATCH 函數的用途
MATCH 函數用來查找指定值在一個範圍或數組中的位置,並返回該值所在的相對位置。它不像 VLOOKUP 或 HLOOKUP 那樣返回對應的資料,而是返回該查找值在範圍中的位置(即索引號)。這可以與其他函數(如 INDEX)結合使用來達成更多的功能。
2. MATCH 函數的語法
MATCH(lookup_value, lookup_array, [match_type])
| 參數 | 說明 |
|---|---|
lookup_value | 必填,要查找的值。 |
lookup_array | 必填,一個範圍或數組,其中包含要查找的值。 |
[match_type] | 選填,指定匹配的類型。可以是: |
1(默認):查找小於或等於lookup_value的最大值,且要求lookup_array排序為升序。0:查找完全匹配lookup_value的位置。-1:查找大於或等於lookup_value的最小值,且要求lookup_array排序為降序。 |
3. MATCH 函數範例
? 範例 1:查找完全匹配的值
假設有以下表格(A1:A5):
| 名字 |
|---|
| 小明 |
| 小華 |
| 小美 |
| 小剛 |
| 小強 |
? 查找 小美 在範圍中的位置:
=MATCH("小美", A1:A5, 0)
? 結果:3
這裡,MATCH("小美", A1:A5, 0) 返回 小美 在範圍 A1:A5 中的位置,即第 3 行。
? 範例 2:查找大於等於查找值的最小位置
假設有以下數字範圍(A1:A5):
| 數字 |
|---|
| 10 |
| 20 |
| 30 |
| 40 |
| 50 |
? 查找大於或等於 35 的最小數字的位置(要求範圍按升序排列):
=MATCH(35, A1:A5, 1)
? 結果:4
這裡,MATCH(35, A1:A5, 1) 查找大於或等於 35 的最小數字,返回的是 40,即它位於範圍中的第 4 行。
? 範例 3:查找小於等於查找值的最大位置
假設有以下數字範圍(A1:A5):
| 數字 |
|---|
| 10 |
| 20 |
| 30 |
| 40 |
| 50 |
? 查找小於或等於 25 的最大數字的位置(要求範圍按升序排列):
=MATCH(25, A1:A5, 1)
? 結果:2
這裡,MATCH(25, A1:A5, 1) 查找小於或等於 25 的最大數字,返回的是 20,即它位於範圍中的第 2 行。
? 範例 4:查找降序範圍中的最小大於值
假設有以下數字範圍(A1:A5),並且該範圍已經按降序排列:
| 數字 |
|---|
| 50 |
| 40 |
| 30 |
| 20 |
| 10 |
? 查找大於或等於 25 的最小數字的位置(要求範圍按降序排列):
=MATCH(25, A1:A5, -1)
? 結果:3
這裡,MATCH(25, A1:A5, -1) 查找大於或等於 25 的最小數字,返回的是 30,即它位於範圍中的第 3 行。
4. MATCH 函數的應用
✅ 查找某個值的位置,如查找特定員工、產品或數字在一個範圍中的位置。
✅ 與其他函數結合使用,如 INDEX、VLOOKUP 等,實現更強大的查找和返回資料功能。
✅ 動態查找,根據不同條件返回數據的位置,並可進行靈活的數據處理。
5. MATCH 函數的限制
| 限制 | 說明 |
|---|---|
需要範圍排序(取決於 match_type) | 當使用 match_type 為 1 或 -1 時,lookup_array 必須已經按照升序或降序排序。 |
| 僅返回位置 | MATCH 只會返回值的位置,而不會返回對應的資料值。若要返回對應資料,可以與 INDEX 函數結合使用。 |
6. 總結
MATCH函數是查找資料位置的強大工具,它返回指定值在範圍中的位置。- 它可以根據不同的查找條件進行精確匹配、近似匹配(小於或大於查找值)等操作。
- 常與
INDEX函數配合使用,實現動態查找和返回結果。