XLOOKUP 函數是 Microsoft Excel 中一個非常強大的查找與引用函數,用來代替傳統的 VLOOKUP 和 HLOOKUP 函數,提供更靈活和直觀的查找方式。XLOOKUP 不僅可以在列或行中查找數據,還能處理多種查找需求,適用於查找範圍的左邊、右邊,甚至是向下查找。
? XLOOKUP 函數語法
XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
參數解釋:
- lookup_value:必須參數,表示要查找的值。
- lookup_array:必須參數,表示要查找的數據範圍(列或行)。
- return_array:必須參數,表示對應的返回值範圍(列或行)。
- [if_not_found](可選):當查找值未找到時返回的結果。默認為
#N/A。 - [match_mode](可選):指定匹配模式:
0(精確匹配,默認值)1(查找最接近的較小值)-1(查找最接近的較大值)
- [search_mode](可選):指定查找模式:
1(從前往後查找,默認值)-1(從後往前查找)
? XLOOKUP 函數應用範例
1️⃣ 基本的精確查找
假設你有一個學生成績的表格,你想查找某個學生的分數:
=XLOOKUP("Alice", A2:A6, B2:B6)
? 解釋:查找名稱為 “Alice” 的學生,並返回她在範圍 B2:B6 中對應的分數。
結果:如果 A2:A6 包含學生姓名,B2:B6 包含對應的分數,函數將返回 “Alice” 的分數。
2️⃣ 查找未找到的結果時返回自定義訊息
=XLOOKUP("Tom", A2:A6, B2:B6, "Not Found")
? 解釋:查找名稱為 “Tom” 的學生,並返回她在範圍 B2:B6 中對應的分數。如果 “Tom” 未找到,則返回 “Not Found”。
結果:如果 “Tom” 學生不在 A2:A6 中,則結果顯示 “Not Found”。
3️⃣ 查找最接近的數值(近似查找)
假設你想查找一個接近的價格,但沒有完全匹配的項目:
=XLOOKUP(15, A2:A6, B2:B6, "Not Found", 1)
? 解釋:查找接近 15 的值,並返回相應的結果。如果 A2:A6 中的數字沒有精確匹配 15,則返回最接近的較小值。
結果:A2:A6 中最接近且小於或等於 15 的數值將返回對應的結果。
4️⃣ 查找從後往前的匹配
假設你想要查找最接近的較大值:
=XLOOKUP(10, A2:A6, B2:B6, "Not Found", -1)
? 解釋:查找接近 10 的較大值,並返回對應的結果。如果 A2:A6 中的數字沒有精確匹配 10,則返回最接近且大於或等於 10 的數值。
結果:A2:A6 中最接近且大於或等於 10 的數值將返回對應的結果。
5️⃣ 查找範圍的左邊數據
如果要查找範圍中的數據並返回位於查找範圍左側的結果,XLOOKUP 也可以做到:
=XLOOKUP(25, B2:B6, A2:A6)
? 解釋:查找 25 在範圍 B2:B6 中,並返回 A2:A6 中對應的值。這是一個範例,顯示 XLOOKUP 可以向左查找數據,而不需要像 VLOOKUP 那樣只能向右查找。
結果:如果 B2:B6 包含數字 25,XLOOKUP 會返回 A2:A6 中對應的數值。
? XLOOKUP 函數的實際應用情景
1️⃣ 查找員工信息
假設你有一個員工資料表,並希望查找某個員工的薪水:
=XLOOKUP("John", A2:A10, B2:B10)
? 效果:查找 A2:A10 中的員工名稱 John,並返回 B2:B10 中對應的薪水。
2️⃣ 查找產品價格
假設你有一個產品價格表格,並希望根據產品代碼查找其價格:
=XLOOKUP("P123", A2:A10, C2:C10)
? 效果:查找 A2:A10 範圍中的產品代碼 P123,並返回 C2:C10 中對應的價格。
3️⃣ 查找年度成績
假設你有一個包含學生年度成績的表格,並希望查找特定學生的年終分數:
=XLOOKUP("David", A2:A10, C2:C10)
? 效果:查找 A2:A10 範圍中的學生名稱 David,並返回 C2:C10 中對應的年終成績。
? 總結
✅ XLOOKUP 是一個非常強大的查找函數,具有靈活性,可以進行精確查找、近似查找、反向查找等操作。
✅ 它可以替代 VLOOKUP 和 HLOOKUP,並且能夠查找範圍的左邊或右邊數據。
✅ 此外,它的設置比傳統的查找函數更直觀,使用時更靈活。