使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

提示: 請嘗試使用新的 XLOOKUP 函數,這是改良的 HLOOKUP 版本,可朝任何方向運作,並預設會傳回完全符合的相符專案,讓使用方式比其前置函數更輕鬆、更方便。

本文將說明 Microsoft Excel 中 HLOOKUP 函數的公式語法及使用方式。

描述

在表格或數值陣列的第一列尋找值,然後傳回表格或陣列之指定列中同一欄的值。 當比較值位於資料表的第一列中,而且您想要在指定列數下方尋找時,請使用 HLOOKUP。 當比較值位於您要尋找之資料左方的某一欄時,請使用 VLOOKUP。

H 在 HLOOKUP 中表示「水平」。

語法

HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])

HLOOKUP 函數語法具有下列引數:

  • Lookup_value    必要。 這是要在數據表第一列中找到的值。 Lookup_value可以是值、參照或文字字串。

  • Table_array    必要。 查閱資料的目錄。 使用範圍或範圍名稱的參照。

    • Table_array 第一列中的值可以是文字、數字或邏輯值。

    • 如果 range_lookup 為 TRUE,table_array 第一列中的數值必須按照遞增順序排列:...-2,-1,0,1,2,...,A-Z,FALSE,TRUE;否則 HLOOKUP 不一定能找出正確的值。 如果 range_lookup 為 FALSE,table_array 就不需要排序。

    • 文字不區分大小寫。

    • 以遞增順序由左至右排序值。 如需詳細資訊,請參閱排序某個範圍或表格中的資料

  • Row_index_num    必要。 table_array中傳回相符值的列號。 1 的row_index_num會傳回 table_array 中的第一列值,2 的row_index_num會傳回 table_array 中的第二列值,依此類此類。 如果 row_index_num 小於 1,HLOOKUP 會傳回 #VALUE! 錯誤值;如果 row_index_num 大於 table_array 上的列數,HLOOKUP 會傳回 #REF! 錯誤值。

  • Range_lookup    選擇性。 指定要 HLOOKUP 尋找完全符合或大約符合的邏輯值。 如果為 TRUE 或省略,則會傳回大約符合的專案。 換句話說,如果找不到完全符合的專案,則會傳回小於lookup_value的下一個最大值。 如果為 FALSE,HLOOKUP 會找到完全相符的專案。 如果找不到,則會傳回錯誤值 #N/A。

註解

  • 如果 HLOOKUP 找不到 lookup_value,且 range_lookup 為 TRUE 時,則使用僅次於 lookup_value 的最大值。

  • 如果 lookup_value 比 table_array 第一列中的最小值還小,則 HLOOKUP 會傳回錯誤值 #N/A。

  • 如果 range_lookup 為 FALSE 且 lookup_value 為文字,則您可以在 lookup_value 中使用萬用字元、問號 (?) 和星號 (*)。 問號可比對任一字元;星號可比對任一連續的字元。 若要尋找實際的問號或星號,請在該字元前輸入波狀符號 (~)。

範例

請在下列表格中複製範例資料,再將之貼到新 Excel 活頁簿中的儲存格 A1。 若要讓公式顯示結果,請選取公式,按 F2,然後再按 Enter。 如有需要,您可以調整欄寬來查看所有資料。

輪軸

軸承

螺栓

4

4

9

5

7

10

6

8

11

公式

描述

結果

=HLOOKUP("輪軸", A1:C4, 2, TRUE)

在列 1 中查詢 "輪軸",從同一欄 (欄 A) 的列 2 傳回值。

4

=HLOOKUP("軸承", A1:C4, 3, FALSE)

在列 1 中查詢 "軸承",從同一欄 (欄 B) 的列 3 傳回值。

7

=HLOOKUP("B", A1:C4, 3, TRUE)

在列 1 中查詢 "B",從同一欄的列 3 傳回值。 由於找不到與 "B" 完全相符的項目,因此使用列 1 中小於 "B" 的最大值:欄 A 中的 "輪軸"。

5

=HLOOKUP("螺栓", A1:C4, 4)

在列 1 中查詢 "螺栓",從同一欄 (欄 C) 的列 4 傳回值。

11

=HLOOKUP(3, {1,2,3;"a","b","c";"d","e","f"}, 2, TRUE)

在三列的常數陣列中查詢數字 3,並從同一欄 (在此案例中為第三欄) 的列 2 傳回值。 常數陣列中有三列的值,每一列均以分號 (;) 區隔。 由於在列 2 找到 "c",而在同一欄是 3,因此會傳回 "c"。

c

需要更多協助嗎?

想要其他選項嗎?

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

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

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×