Excel - MATCH 函式



描述

MATCH 函式在單元格區域中搜索指定項,然後返回該項在區域中的相對位置。

當您需要項在區域中的位置而不是項本身時,請使用 MATCH 而不是其中一個 LOOKUP 函式。例如,您可以使用 MATCH 函式為 INDEX 函式的 row_num 引數提供值。

語法

MATCH (lookup_value, lookup_array, [match_type])

引數

引數 描述 必填/可選
lookup_value

您要在 lookup_array 中匹配的值。例如,當您在電話簿中查詢某人的號碼時,您使用該人的姓名作為查詢值,但電話號碼是您想要的值。

lookup_value 引數可以是值(數字、文字或邏輯值)或對數字、文字或邏輯值的單元格引用。

必填
lookup_array

正在搜尋的單元格區域。

必填
match_type

數字 -1、0 或 1。

match_type 引數指定 Excel 如何將 lookup_value 與 lookup_array 中的值匹配。

此引數的預設值為 1。

請參見下文,瞭解函式如何根據 match_type 引數查詢值。

可選

match_type MATCH 函式查詢什麼
1 或省略

MATCH 查詢小於或等於 lookup_value 的最大值。

lookup_array 引數中的值必須按升序排列,例如:...-2、-1、0、1、2... A-Z、FALSE、TRUE。

0

MATCH 查詢與 lookup_value 完全相等的首個值。

lookup_array 引數中的值可以按任何順序排列。

-1

MATCH 查詢大於或等於 lookup_value 的最小值。

lookup_array 引數中的值必須按降序排列,例如:TRUE、FALSE、Z-A ...2、1、0、-1、-2...,依此類推。

備註

  • MATCH 返回匹配值在 lookup_array 中的位置,而不是值本身。例如,MATCH ("b",{"a","b","c"},0) 返回 2,這是 "b" 在陣列 {"a","b","c"} 中的相對位置。

  • 匹配文字值時,MATCH 不區分大小寫。

  • 如果 MATCH 未能找到匹配項,則返回 #N/A 錯誤值。

  • 如果 match_type 為 0 且 lookup_value 為文字字串,則可以在 lookup_value 引數中使用萬用字元 - 問號 (?) 和星號 (*)

    • 問號匹配任何單個字元

    • 星號匹配任何字元序列

    • 如果要查詢實際的問號或星號,請在字元前鍵入波浪號 (~)

  • 如果 lookup_array 未正確排序,則 Match 函式返回錯誤的結果

  • 當函式無法為 lookup_value 找到匹配項時,Match 函式返回 #N/A 錯誤值。這可能發生在以下情況:

    • 如果 match_type = 0 且在 lookup_array 中未找到 lookup_value 的完全匹配項

    • 如果 match_type = 1 或省略,並且 lookup_array 中的第一個值大於 if match_type = 1 lookup_value(即,陣列按升序排列,並且沒有小於或等於 lookup_value 的最接近匹配項)。

    • 如果 match_type = -1 並且 lookup_array 中的第一個值小於 lookup_value(因此,如果陣列按降序排列,則沒有大於或等於 lookup_value 的最接近匹配項)。

    • 如果 lookup_value 或 lookup_array 中的值中存在看不見的字元。

    • 如果 lookup_value 和 lookup_array 中的資料具有不同的資料型別。

適用性

Excel 2007、Excel 2010、Excel 2013、Excel 2016

示例

Match Function
advanced_excel_lookup_reference_functions.htm
廣告