Google Sheet- Match Function


Google Sheet 的 MATCH 函數 是用來在範圍中查找特定值的位置(列號或欄號)。它經常搭配 INDEX 函數 使用,形成靈活的查找工具。


MATCH 函數語法

=MATCH(搜尋鍵, 搜尋範圍, [比對類型])

參數說明

1. 搜尋值(search_key)

• 您想尋找的值,可以是數字、文字、日期或邏輯值(例如 TRUE)。

• 例如:50 或 “產品名稱”。

2. 搜尋範圍(range)

• 例如:A1:A10 或 B1:B10。

3. 比對類型(match_type)

• 控制搜尋方式,預設為 1。

• 1:小於或等於搜尋鍵的最大值,範圍必須按升序排序。

• 0:精確匹配(不需要排序)。

• -1:大於或等於搜尋值的最小值,範圍必須按降序排序。

基本範例

範例 1:精確匹配

=MATCH(100, A1:A10, 0)

搜尋值:100

搜尋範圍:A1:A10 ( 因為是A欄,所以傳回值為第n列 )

比對類型:0(精確匹配)

結果:傳回 100 在範圍中的行號。例如,如果 100 位於 A5,結果為 5。


範例 2:升序排序的近似匹配

=MATCH(90, A1:A10, 1)

搜尋值:90

搜尋範圍:A1:A10(需升序排列)

比對類型:1(小於或等於 90 的最大值)

結果:如果範圍中有數值小於等於 90(如 80 位於 A4),返回 4。


範例 3:降序排序的近似匹配

=MATCH(90, A1:A10, -1)

搜尋值:90

搜尋範圍:A1:A10(需降序排列)

比對類型:-1(大於或等於 90 的最小值)

結果:如果範圍中有數值大於等於 90(如 95 位於 A3),返回 3。

進階應用

範例 4:結合 INDEX 函數

查找對應值

=INDEX(B1:B10, MATCH("產品甲", A1:A10, 0))

MATCH 部分:尋找 A1:A10 中 “產品甲” 的位置,例如在A5,傳回5。

INDEX 部分:根據該位置,傳回 B1:B10 中的相應值,也就是B5的值。

作用

• 如果 “產品A” 位於 A5,MATCH 傳回 5,INDEX 傳回 B5 的值。


範例 5:查找最接近的數值

=MATCH(55, A1:A10, 1)


作用:在升序範圍中,傳回小於或等於 55 的最大值的位置。

範例 6:配合動態範圍

找最後一個非空白值的位置

=MATCH(9^9, A1:A100, 1)

搜尋值:9^9(非常大的數字,確保匹配到範圍內的最後值)。

結果:返回範圍內最後一個非空白儲存格的位置。

範例 7:錯誤處理

當搜尋鍵不存在時,MATCH 會返回錯誤。可使用 IFERROR 處理:

=IFERROR(MATCH("產品B", A1:A10, 0), "未找到")


作用:如果 “產品B” 在範圍中找不到,傳回 「未找到」

常見問題

1. 搜尋範圍是否需要排序?

• 比對類型為 0 時,不需要排序。

• 比對類型為 1 或 -1 時,範圍必須按升序或降序排列。

2. 可否尋找部分文字?

• MATCH 只支援完整匹配,若需部分匹配,可使用 SEARCH 或 FIND 函數搭配。