LOOKUP 函數

如果您需要查詢單列或單欄,並在第二列或第二欄的同一個位置尋找一值時,請使用 LOOKUP (其中一個查閱與參照函數)。

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

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

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

使用 VLOOKUP 搜尋一列或一欄,或搜尋多列與多欄 (如表格)。這是大幅改善的 LOOKUP 版本請查看這段影片,瞭解如何使用 VLOOKUP

使用 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

    頻率

    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 的錯誤值。

  • array    必要。 包含要與 lookup_value 比較之文字、數字或邏輯值的儲存格範圍。

    陣列形式的 LOOKUPHLOOKUPVLOOKUP 函數非常類似。 差異在於 HLOOKUP 會在第一列搜尋 lookup_value 的值,VLOOKUP 會搜尋第一欄,而 LOOKUP 會根據陣列維度搜尋。

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

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

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

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

適用:



這項資訊有幫助嗎?

我們應該如何改進?

255 剩餘字元數

若要保護您的隱私,請不要在意見反應中包含連絡資訊。 檢閱我們的 隱私權原則

感謝您的意見反應!

支援資源

變更語言