LOOKUP 函數

Applies To
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

當您需要查看單一列或欄,並從第二列或欄中相同位置尋找值時,請使用 LOOKUP 是查閱與參照函數的其中之一。

例如,您知道自動組件的組件編號,但您不知道價格。 當您在儲存格 H1 中輸入自動組件編號時,可以使用 LOOKUP 函數傳回在儲存格 H2 中的價格。

說明可如何使用 LOOKUP 函數的範例

使用 LOOKUP 函數來搜尋一列或一欄。 上述範例中,我們會搜尋位於欄 D 內的價格。

秘訣

請考慮其中一個較新的查閱函式,具體取決於您使用的版本。

  • 使用 VLOOKUP 搜尋單列或單欄,或搜尋多個列和欄, (例如表格) 。 這是大幅改善的 LOOKUP 版本 觀看這段有關如何使用 VLOOKUP 的影片
  • 如果您使用的是 Microsoft 365,請使用 XLOOKUP ,它不僅速度更快,還可讓您向上、下、左、右) 任何方向 (進行搜尋。

使用 LOOKUP 的方式有兩種:向量形式與陣列形式

  • 向量形式:使用這個形式的 LOOKUP 函數來搜尋一列或一欄中的值。 若要指定包含您想要比對之值的範圍,請使用向量形式。 例如,如果您要搜尋欄 A 到列 6 中的值。
    向量範例
  • 陣列形式:強烈建議您使用 VLOOKUPHLOOKUP ,而非陣列形式。 觀看這段有關使用 VLOOKUP 的影片。 陣列形式可與其他試算表程式相容,但功能有限。
    陣列是您想要搜尋的一組列和欄 (例如表格) 中的值。 舉例來說,如果您想要搜尋欄 A 與欄 B 到列 6。 LOOKUP 會傳回最接近的相符項目。 若要使用陣列形式,您的資料必須加以排序。
    表格範例,此為陣列

向量形式

向量形式的 LOOKUP 會在單列或單欄範圍 (亦稱為向量) 中尋找值,並傳回第二個單列或單欄範圍內相同位置的值。

語法

LOOKUP(lookup_value, lookup_vector, [result_vector])

LOOKUP 函數的向量形式語法具有下列引數:

  • lookup_value 必填項目。 這是 LOOKUP 在第一個向量中要尋找的值。 Lookup_value 可以是數字、文字、邏輯值,或是參照值的名稱或參照。

  • lookup_vector 必填項目。 僅包含一列或一欄的範圍。 lookup_vector中的值可以是文字、數字或邏輯值。

    重要

    lookup_vector中的值必須以遞增順序排列:...、-2、-1、0、1、2、...、A-Z、FALSE、TRUE;否則,LOOKUP 可能不會傳回正確的值。 文字不區分大小寫。

  • result_vector 選用。 僅含一列或一欄的範圍。 result_vector引數必須與 lookup_vector 的大小相同。 其大小必須一樣。

備註

  • 如果 LOOKUP 函數找不到 lookup_value,函數會比對 lookup_vector 中小於或等於 lookup_value 的最大值。
  • 如果 lookup_value 小於 lookup_vector 中的最小值, LOOKUP 會傳回 #N/A 錯誤值。

向量範例

您可以試著在自己的 Excel 工作表中進行這些範例,以了解 LOOKUP 函數的運作方式。 在第一個範例中,最後完成的試算表會看似如下:

使用 LOOKUP 函數的範例

  1. 請複製下列表格中的資料,並將其貼到新的 Excel 工作表。

    複製此資料到欄 A 複製此資料到欄 B
    Frequency 色彩
    4.14 紅色
    4.19 橙色
    5.17 黃色
    5.77 綠色
    6.39 藍色
  2. 接下來,從下表中複製 LOOKUP 公式到您工作表中的欄 D。

    將這個公式複製到欄 D 中 以下為這個公式的功能 以下是您會看到的結果
    =LOOKUP(4.19, A2:A6, B2:B6) 在欄 A 中查詢 4.19,並從同一列的欄 B 傳回值。 橙色
    =LOOKUP(5.75, A2:A6, B2:B6) 在欄 A 中查詢 5.75,符合最接近的次小值 (5.17),並從同一列的欄 B 傳回值。 黃色
    =LOOKUP(7.66, A2:A6, B2:B6) 在欄 A 中查詢 7.66,符合最接近的次小值 (6.39),並從同一列的欄 B 傳回值。 藍色
    =LOOKUP(0, A2:A6, B2:B6) 在欄 A 中查詢 0,並傳回錯誤,因為 0 小於欄 A 中的最小值 (4.14)。 #N/A
  3. 若要讓這些公式顯示結果,您可能需要在 Excel 工作表中加以選取,按下 F2 鍵,然後按下 Enter。 如有需要,請調整欄寬來查看所有資料。

陣列形式

秘訣

強烈建議您使用 VLOOKUPHLOOKUP ,而非陣列形式。 請觀看這段有關 VLOOKUP 的影片;其中提供範例。 提供 LOOKUP 的陣列形式以與其他試算表程式相容,但其功能有限。

LOOKUP 的陣列形式會在陣列的第一列或第一欄中尋找指定的值,並從陣列最後一列或最後一欄的相同位置傳回值。 如果要比對的值位於陣列第一列或第一欄,請使用這種形式的 LOOKUP 函數。

語法

LOOKUP(lookup_value, array)

LOOKUP 函數的陣列形式語法具有下列引數:

  • lookup_value 必填項目。 LOOKUP 函數在陣列中要尋找的值。 lookup_value引數可以是數字、文字、邏輯值,或是參照值的名稱或參照。

    • 如果 LOOKUP 找不到 lookup_value 的值,則會使用陣列中小於或等於 lookup_value 的最大值。
    • 如果 lookup_value 的值小於第一列或第一欄的最小值 (視陣列維度) 而定, LOOKUP 會傳回 #N/A 錯誤值。
  • 陣列 必填項目。 包含要與 lookup_value 比較之文字、數字或邏輯值的儲存格範圍。
    陣列形式的 LOOKUPHLOOKUPVLOOKUP 函數非常類似。 不同的是, HLOOKUP 在第一列中搜尋 lookup_value 的值, VLOOKUP 在第一欄中搜尋,而 LOOKUP 則根據陣列的維度進行搜尋。

    • 如果陣列所涵蓋的區域寬度大於高度, (欄數) 多於列數,則 LOOKUP 會在第一列中尋找 lookup_value 的值。

    • 如果陣列是正方形,或是高度大於寬度 (列數比欄數多),則 LOOKUP 函數會在第一欄中搜尋。

    • 若使用 HLOOKUPVLOOKUP 函數,您可以向下或橫向索引,但是 LOOKUP 會一律選取列或欄中的最後一個值。

      重要

      陣列中的值必須以遞增順序排列:..., -2, -1, 0, 1, 2, ...、A-Z、FALSE、TRUE,否則,LOOKUP 可能不會傳回正確的值。 文字不區分大小寫。