搜尋 整個 Office.com
 
支援中心 / Excel
 
 
 

本文將說明 Microsoft Excel 中 LOOKUP 函數 (函數:接受值、執行作業並傳回值之預先撰寫的公式。使用函數可以簡化並縮短工作表上的公式,特別是執行冗長或複雜計算的公式。)的公式語法及使用方式。

描述

LOOKUP 函數會從單列或單欄範圍 (範圍:工作表上的兩個或多個儲存格。範圍中的儲存格可以相鄰或不相鄰。)或從陣列 (陣列:用來建立產生多個結果或運算一組以列及欄排列之引數的單一公式。陣列範圍共用一個公式;一個陣列常數是用作一個引數的一組常數。)傳回一個值。LOOKUP 函數有兩種語法形式:向量形式與陣列形式。

若您要 請參閱 用法
在單列或單欄範圍 (亦稱為向量) 中尋找值,並傳回第二個單列或單欄範圍內相同位置的值 向量形式 若有大量值清單要查詢,或若值可能會隨時間變更,請使用向量形式。
在陣列的第一列或第一欄中尋找指定的值,然後傳回陣列最後一列或最後一欄內相同位置的值 陣列形式 若只有少量值清單,而且值在不同時間都保持不變,請使用陣列形式。

 附註 

  • 針對複雜的測試,或是巢狀函數超出限制的測試,您也可以使用 LOOKUP 函數替代 IF 函數。請參閱陣列形式的範例。
  • 若要讓 LOOKUP 函數正確運作,必須以遞增順序排序要尋找的資料。如果無法這麼做,請考慮使用 VLOOKUPHLOOKUPMATCH 函數。

向量形式

向量是只有單列或單欄的範圍。向量形式的 LOOKUP 會在單列或單欄範圍 (亦稱為向量) 中尋找值,並傳回第二個單列或單欄範圍內相同位置的值。若要指定包含要比對之值的範圍,請使用這種形式的 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 Web App (在 Web 上執行的 Excel版本) 進行計算。

此範例使用向量形式的 LOOKUP 函數,只在單列或單欄範圍中尋找

使用內嵌活頁簿的此 LOOKUP 函數範例

如果已選取內嵌活頁簿中「即時結果」欄的儲存格,您可以按 F2 查看其基礎公式。您可以變更儲存格中的公式,或是可以複製或編輯公式,然後貼到另一個儲存格並在其中進行實驗。

檢視完整大小的活頁簿

您可以下載此活頁簿,方法為在內嵌活頁簿右下角按一下 [檢視完整大小的活頁簿] 按鈕 (上圖黑色列右端)。按一下此按鈕,即能在新的瀏覽器視窗載入活頁簿 (或索引標籤,視您的瀏覽器設定而定)。請注意,您無法在完整大小瀏覽器檢視中輸入工作表儲存格。

在完整大小瀏覽器檢視中,您隨後可以按一下 [下載] 按鈕下載 Excel 活頁簿 ,即可在 Excel 中開啟整個活頁簿,或儲存到您的電腦。如果是某些函數範例,在 Excel 桌上型電腦程式中開啟活頁簿可讓您使用陣列公式,而您必須同時按住 CTRL+SHIFT+Enter 按鍵組合 (這項組合中在瀏覽器中並沒有作用)。

頁首 頁首

陣列形式

陣列形式的 LOOKUP 會在陣列 (陣列:用來建立產生多個結果或運算一組以列及欄排列之引數的單一公式。陣列範圍共用一個公式;一個陣列常數是用作一個引數的一組常數。)的第一列或第一欄中尋找指定的值,然後傳回陣列最後一列或最後一欄中相同位置的值。若要比對的值位於陣列第一列或第一欄,請使用這種形式的 LOOKUP 函數。若要指定欄或列的位置,請使用另一個形式的 LOOKUP

 秘訣   一般而言,最好使用 HLOOKUPVLOOKUP 函數,而不使用陣列形式的 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 可能不會傳回正確的值。文字不區分大小寫。

範例

範例 1

這些範例使用陣列形式的 LOOKUP,在陣列 (陣列:用來建立產生多個結果或運算一組以列及欄排列之引數的單一公式。陣列範圍共用一個公式;一個陣列常數是用作一個引數的一組常數。)的第一列或第一欄中尋找指定的值,然後傳回陣列最後一列或最後一欄中相同位置的值

使用內嵌活頁簿的此 LOOKUP 函數範例

範例 2

此陣列形式範例會指派成績等級值作為測驗分數。

使用內嵌活頁簿的此 LOOKUP 函數範例