本文將說明 Microsoft Excel 中 VLOOKUP 函數 (函數:接受值、執行作業並傳回值之預先撰寫的公式。使用函數可以簡化並縮短工作表上的公式,特別是執行冗長或複雜計算的公式。)的公式語法及使用方式。
說明
您可以使用 VLOOKUP 函數來搜尋儲存格範圍 (範圍:工作表上的兩個或多個儲存格。範圍中的儲存格可以相鄰或不相鄰。)的第一欄,然後從範圍同一列的任何儲存格傳回一個值。例如,假設您在範圍 A2:C10 中有一份員工名單。範圍的第一欄儲存了員工的識別碼編號,如下圖所示。
如果您知道員工的識別碼編號,就可以使用 VLOOKUP 函數來傳回該員工的部門或姓名。若要取得編號 38 的員工姓名,您可以使用公式 =VLOOKUP(38, A2:C10, 3, FALSE)。此公式會在範圍 A2:C10 的第一欄中搜尋值 38,然後傳回與查閱值同一列的範圍第三欄中所含值 (「周露西」)。
VLOOKUP 中的 V 代表「垂直」。當比對值位於要尋找之資料左方的某一欄時,請使用 VLOOKUP,而非 HLOOKUP。
語法
VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
VLOOKUP 函數語法具有下列引數 (引數:將資訊提供給動作、事件、方法、屬性、函數或程序的值。):
- lookup_value 必要。這是要在表格或範圍的第一欄中搜尋的值。lookup_value 引數可以是值,也可以是參照。如果您提供給 lookup_value 引數的值小於 table_array 引數第一欄中的最小值,VLOOKUP 就會傳回 #N/A 錯誤值。
- table_array 必要。這是包含資料的儲存格範圍。您可以使用範圍的參照 (例如,A2:D8),也可以使用範圍名稱。table_array 第一欄中的值就是 lookup_value 所搜尋的值。這些值可以是文字、數字或邏輯值。文字不區分大小寫。
- col_index_num 必要。這是 table_array 引數中必須傳回相對應值的欄號。如果 col_index_num 引數值為 1,則傳回 table_array 第一欄中的值;如果 col_index_num 引數值為 2,則傳回 table_array 第二欄中的值,依此類推。
如果 col_index_num 引數:
- 小於 1,則 VLOOKUP 會傳回 #VALUE! 錯誤值。
- 大於 table_array 中的欄數,則 VLOOKUP 會傳回 #REF! 錯誤值。
- range_lookup 選用。這是一個邏輯值,用以指定 VLOOKUP 應該要尋找完全符合或大約符合的值:
- 如果 range_lookup 為 TRUE 或被省略,則傳回完全符合或大約符合的值。如果找不到完全符合的值,將會傳回僅次於 lookup_value 的最大值。
重要事項 如果 range_lookup 為 TRUE 或被省略,table_array 第一欄中的值必須以遞增順序排序;否則,VLOOKUP 可能無法傳回正確的值。
如需詳細資訊,請參閱排序範圍或表格中的資料。
如果 range_lookup 為 FALSE,則不需要排序 table_array 第一欄中的值。
- 如果 range_lookup 引數為 FALSE,則 VLOOKUP 只會尋找完全符合的值。如果 table_array 第一欄中有兩個以上的值與 lookup_value 相符,將會使用第一個找到的值。如果找不到完全符合的值,則傳回錯誤值 #N/A。
備註
- 在 table_array 的第一欄中搜尋文字值時,請確定 table_array 第一欄中的資料不包含前置空格、結尾空格、不成對的直引號 ( ' 或 " ) 及彎引號 ( ‘ 或 “ ),以及非列印字元。否則,VLOOKUP 可能會傳回不正確或非預期的值。
如需詳細資訊,請參閱 CLEAN 函數和 TRIM 函數。
- 搜尋數字或日期值時,請確定 table_array 第一欄中的資料並未儲存成文字值。否則,VLOOKUP 可能會傳回不正確或非預期的值。
- 如果 range_lookup 為 FALSE 且 lookup_value 為文字,則您可以在 lookup_value 中使用萬用字元 (問號 (?) 和星號 (*))。 問號可替代任一字元;星號可替代任一連續的字元。如果您是要尋找實際的問號或星號,請在該字元前輸入波狀符號 (~)。
範例
範例 1
此說明主題會連結至內嵌活頁簿中的即時資料。在工作表中變更資料,或是在工作表中修改或建立公式時,則會立即使用 Excel Web App (在 Web 上執行的 Excel 版本) 進行計算。
本範例會在一份大氣特性表的「密度」欄中進行搜尋,以找出「黏性」和「溫度」欄中的對應值 (其值適用於 1 大氣壓的空氣,亦即位於海平面、攝氏溫度為 0 度的空氣)。
使用內嵌活頁簿的此 VLOOKUP 函數範例
附註 在 Excel Web App 中,若要依結果適當格式來檢視,請選取該儲存格,然後在 [常用] 索引標籤的 [數值] 群組中,按一下 [數值格式] 旁的箭號,再按一下 [通用格式]。
如果已選取內嵌活頁簿中「即時結果」欄的儲存格,您可以按 F2 查看其基礎公式。您可以變更儲存格中的公式,或是可以複製或編輯公式,然後貼到另一個儲存格並在其中進行實驗。
您可以下載此活頁簿,方法為在內嵌活頁簿右下角按一下 [檢視完整大小的活頁簿] 按鈕 (上圖黑色列右端)。按一下此按鈕,即能在新的瀏覽器視窗載入活頁簿 (或索引標籤,視您的瀏覽器設定而定)。請注意,您無法在完整大小瀏覽器檢視中輸入工作表儲存格。
在完整大小瀏覽器檢視中,您隨後可以按一下 [下載] 按鈕
,即可在 Excel 中開啟整個活頁簿,或儲存到您的電腦。如果是某些函數範例,在 Excel 桌面程式中開啟活頁簿可讓您使用陣列公式,而您必須同時按住 CTRL+SHIFT+Enter 按鍵組合 (這項組合中在瀏覽器中並沒有作用)。
範例 2
本範例會在一份嬰幼兒產品表的「商品代碼」欄中進行搜尋,並比對「成本」和「加價率」欄中的值,以計算出價格,並針對各種情況進行測試。
使用內嵌活頁簿的此 VLOOKUP 函數範例
附註 在 Excel Web App 中,若要依結果適當格式來檢視,請選取該儲存格,然後在 [常用] 索引標籤的 [數值] 群組中,按一下 [數值格式] 旁的箭號,再按一下 [通用格式]。
範例 3
本範例會在一份員工表格的「員工編號」欄中進行搜尋,並比對其他欄中的值,以計算出員工的年紀,並針對各種錯誤情況進行測試。
使用內嵌活頁簿的此 VLOOKUP 函數範例
附註 在 Excel Web App 中,若要依結果適當格式來檢視,請選取該儲存格,然後在 [常用] 索引標籤的 [數值] 群組中,按一下 [數值格式] 旁的箭號,再按一下 [通用格式]。