使用 Excel 內建函式在表格或儲存格中尋找資料

套用到
Microsoft 365 Excel

摘要

這篇逐步文章說明如何利用 Microsoft Excel 內建的各種函式,在表格 (或儲存格範圍中尋找資料) 。 你可以用不同的公式來得到相同的結果。

建立範例工作表

本文使用範例工作表來說明 Excel 內建函式。 舉例來說,引用 A 欄的一個名字,並從 C 欄回傳該人的年齡。要建立此工作表,請將以下資料輸入空白的 Excel 工作表。

你要在 E2 格子裡輸入你想找的值。 你可以在同一張工作表中的任何空白格子輸入公式。

  A B C D E  
1 名稱 部門 年齡 尋找價值
2 智偉 501 28 Mary
3 史丹 201 19
4 Mary 101 22
5 拉里 301 29

術語定義

本文使用以下術語來描述 Excel 內建函式:

字詞 定義 範例
資料表陣列 整個查找表 A2:C5
Lookup_Value 該數值位於Table_Array的第一欄。 E2
Lookup_Array
-或-
Lookup_Vector
包含可能查找值的儲存格範圍。 A2:A5
Col_Index_Num 應回傳 Table_Array 的欄位編號與匹配值。 Table_Array) (第三縱隊
Result_Array
-或-
Result_Vector
僅含一列或一欄的範圍。 它必須和Lookup_Array或Lookup_Vector一樣大。 C2:C5
Range_Lookup 邏輯值 (真或假) 。 若為 TRUE 或省略,則回傳近似匹配結果。 如果是 FALSE,它會尋找完全吻合的匹配。 FALSE
Top_cell 這就是你想要以偏移量為基準的參考點。 Top_Cell必須指一個單元或相鄰單元的範圍。 否則,OFFSET 會回傳 #VALUE! 的錯誤值。
Offset_Col 這是你希望結果左上方格子指向的左或右兩欄。 例如,Offset_Col參數「5」指定參考中左上方的格子位於參考的右側五欄。 Offset_Col可以是正 (,表示位於起始參考) 的右側,或負 (,表示位於起始參考) 的左側。

函數

查 ()

LOOKUP 函式會在單一列或欄中找到一個值,並將其與不同列或欄中相同位置的值匹配。

以下是 LOOKUP 公式語法的範例:

    =查詢 (Lookup_Value,Lookup_Vector,Result_Vector)

以下公式在範例工作表中找到瑪麗的年齡:

    =查找 E2,A2:A5,C2:C5 ()

該公式在 E2 格子中使用「Mary」值,並在查詢向量 A) (找到「Mary」。 公式接著會與結果向量 C) 欄同列的值相匹配 (。 由於「Mary」位於第 4 列,LOOKUP 會回傳第 C 欄第 4 列的值 (22) 。

注意:LOOKUP 函式要求資料表被排序。

欲了解更多關於 LOOKUP 功能的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
 

如何在 Excel 中使用 LOOKUP 函式

VLOOKUP ()

當資料以欄位列出時,會使用 VLOOKUP 或垂直查找功能。 此函式搜尋最左邊欄位的值,並與同一列指定欄位的資料匹配。 你可以用 VLOOKUP 在排序或未排序的資料表中尋找資料。 以下範例使用一個包含未排序資料的表格。

以下是 VLOOKUP 公式語法的範例:

    =VLOOKUP (Lookup_Value,Table_Array,Col_Index_Num,Range_Lookup)

以下公式在範例工作表中找到瑪麗的年齡:

    =VLOOKUP (E2,A2:C5,3,FALSE)

該公式使用E2格的值「Mary」,並在A) 欄最左邊 (找到「Mary」。 公式則會與Column_Index中同列的值相匹配。 此範例使用「3」作為Column_Index (欄 C) 。 由於「Mary」位於第 4 列, VLOOKUP 會回傳第 C 欄第 4 列的值, (22) 。

欲了解更多關於 VLOOKUP 功能的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
 

如何使用 VLOOKUP 或 HLOOKUP 來尋找完全匹配的

索引 () 與匹配 ()

你可以同時使用 INDEX 和 MATCH 函式,得到和使用 LOOKUPVLOOKUP 相同的結果。

以下是結合 INDEXMATCH 以產生與前述 LOOKUPVLOOKUP 相同結果的語法範例:

    =索引 (Table_Array,匹配 (Lookup_Value,Lookup_Array,0) ,Col_Index_Num)

以下公式在範例工作表中找到瑪麗的年齡:

=指數 (A2:C5,匹配 (E2,A2:A5,0) ,3)

該公式使用格子 E2 中的「Mary」值,並在 A 欄找到「Mary」。接著它會匹配 C 欄同一列的值。由於「Mary」位於第 4 列,公式回傳第 C 欄第 4 列的值 (22) 。

注意: 如果Lookup_Array中沒有任何格子符合Lookup_Value (「Mary」) ,這個公式會回傳 #N/A。
欲了解更多關於 INDEX 功能的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:

如何使用 INDEX 函式在表格中尋找資料

偏移 () 與匹配 ()

你可以同時使用 OFFSETMATCH 函數,產生與前述函數相同的結果。

以下是一個結合 OFFSET 與 MATCH 以產生與 LOOKUPVLOOKUP 相同結果的語法範例:

    =偏移 (top_cell,匹配 (Lookup_Value,Lookup_Array,0) ,Offset_Col)

這個公式在範例工作表中找到了瑪麗的年齡:

    =偏移量 (A1,匹配 (E2,A2:A5,0) ,2)

該公式使用格子 E2 中的「Mary」值,並在 A 欄找到「Mary」。公式則會與同一列中右側兩欄的值相符, (欄 C) 。 由於「Mary」位於 A 欄,公式回傳 C 欄第 4 列的值 (22) 。

欲了解更多關於 OFFSET 功能的資訊,請點擊以下文章編號以瀏覽 Microsoft 知識庫中的文章:
 

如何使用 OFFSET 函數