Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 for Mac Excel 2016

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

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

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

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

根據您使用的版本而定,請考慮使用其中一個較新的查閱函數。

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

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

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

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

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

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

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

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。