如何在 Microsoft Excel 中使用 XLOOKUP 函数

Excel 中,新的 XLOOKUP 函數將成為 VLOOKUP 的強大替代品,後者是 Excel 中最常用的功能之一。這個新函數不僅解決了 VLOOKUP 的一些限制,還增加了額外的功能。以下是您需要了解的相關資訊。

什麼是 XLOOKUP?

XLOOKUP 函數為 VLOOKUP 的某些主要缺陷提供了解決方案。此外,它還能取代 HLOOKUP 函數。例如,XLOOKUP 可以執行向左查找、預設為完全匹配,並且允許用戶指定單元格範圍而非列號。VLOOKUP 在使用上不如 XLOOKUP 方便且用途廣泛。接下來,我們將詳細說明它的運作方式。

目前,XLOOKUP 僅提供給 Office 測試人員計畫的用戶。任何人都可以加入測試人員計畫,以便在最新的 Excel 功能推出時立即使用。Microsoft 將很快開始向所有 Office 365 用戶全面推出此功能。

如何使用 XLOOKUP 函數

我們直接來看 XLOOKUP 的實際應用範例。以下面的範例數據為例。我們希望從 F 列中檢索 A 列中每個 ID 對應的部門。

這是一個典型的完全匹配查找案例。XLOOKUP 函數只需要三個主要資訊。

下圖顯示了帶有六個參數的 XLOOKUP,但只有前三個參數是完全匹配所必需的。讓我們聚焦於這三個參數:

Lookup_value: 你要查找的內容。
Lookup_array: 在哪裡查找。
Return_array: 包含要返回值的範圍。

這個範例的公式如下:=XLOOKUP(A2,$E$2:$E$8,$F$2:$F$8)

現在,我們來探討 XLOOKUP 相對於 VLOOKUP 的幾個優勢。

無需列索引號

VLOOKUP 的第三個參數,也就是指定要從表格陣列傳回資訊的列號,一直令人困擾。XLOOKUP 則解決了這個問題,它讓您可以選擇要傳回的範圍(本例中的 F 列)。

此外,別忘了 XLOOKUP 能夠查找所選單元格左側的數據,這點與 VLOOKUP 不同。 稍後會有更多關於這方面的說明。

插入新列時,公式也不再會發生錯誤。如果在您的電子表格中發生這種情況,則傳回範圍會自動調整。

預設完全匹配

在學習 VLOOKUP 時,為什麼必須指定精確匹配總令人困惑。

幸運的是,XLOOKUP 預設為完全匹配,而這也是使用查找公式的常見原因。這減少了使用者回答第五個參數的需求,並確保新手使用時減少錯誤的產生。

總而言之,XLOOKUP 比 VLOOKUP 更為人性化、更強大且更不容易出錯。

XLOOKUP 可以向左查找

能夠選擇查找範圍使 XLOOKUP 比 VLOOKUP 更為通用。 使用 XLOOKUP 時,表格中列的順序並不重要。

VLOOKUP 的限制在於它只能從表格最左側的列開始搜索,然後從指定數量的列向右傳回值。

在下面的例子中,我們需要查找一個 ID(E 列)並返回該人員的姓名(D 列)。

下面的公式可以實現:=XLOOKUP(A2,$E$2:$E$8,$D$2:$D$8)

如果找不到該怎麼辦?

查找函數的用戶非常熟悉 #N/A 錯誤訊息,當 VLOOKUP 或 MATCH 函數找不到所需內容時,就會顯示這個訊息。通常,這種錯誤的出現是有邏輯原因的。

因此,使用者會很快研究如何隱藏此錯誤,因為它可能不相關或無用。當然,也有方法可以做到這一點。

XLOOKUP 內建了「如果找不到」參數,用於處理這類錯誤。我們在前面的例子中查看其效果,但這次輸入一個錯誤的 ID。

以下公式將顯示文字「Incorrect ID」,而不是錯誤訊息:=XLOOKUP(A2,$E$2:$E$8,$D$2:$D$8,”Incorrect ID”)

使用 XLOOKUP 進行範圍查找

雖然不如精確匹配那麼常見,但在範圍內查找值是查找公式的一種非常有效應用。舉例來說,我們希望根據花費的金額返回折扣。

這次我們不是在尋找特定值。我們需要知道 B 列中的值在 E 列範圍內的哪個位置,這將決定可以獲得的折扣。

XLOOKUP 有一個可選的第五個參數(記住,它預設為完全匹配),名為「匹配模式」。

您可以看到 XLOOKUP 比 VLOOKUP 具有更強大的近似匹配功能。

可以選擇查找小於 (-1) 或大於 (1) 所查找值的最接近匹配項。還有一個選項可以使用通配符 (2),例如 ? 或者 *。 預設情況下,此設定不像 VLOOKUP 那樣啟用。

如果找不到完全匹配,此示例中的公式將返回小於查找值的最接近值:=XLOOKUP(B2,$E$3:$E$7,$F$3:$F$7,,-1)

但是,C7 單元格中出現了一個錯誤,返回 #N/A 錯誤(未使用「如果找不到」參數)。它應該返回 0% 的折扣,因為花費 64 不符合任何折扣的標準。

XLOOKUP 函數的另一個優點是它不像 VLOOKUP 那樣要求查找範圍按升序排列。

在查找表格的底部輸入新行,然後擴展公式。通過點擊並拖動角落來擴大使用範圍。

公式立即糾正了錯誤。範圍底部有“0”不是問題。

就個人而言,我仍然會按查找列對表格進行排序。 底部有“0”會讓我感到困擾。 但是公式不會出錯的事實真是太棒了。

XLOOKUP 也取代了 HLOOKUP 函數

如前所述,XLOOKUP 函數也取代了 HLOOKUP。一個函數代替兩個。太棒了!

HLOOKUP 函數是水平查找,用於沿行搜索。

它不像其兄弟 VLOOKUP 那樣廣為人知,但對於以下示例很有用,其中標題位於 A 列,數據位於第 4 行和第 5 行。

XLOOKUP 可以在兩個方向上查看 – 向下沿列和水平沿行。我們不再需要兩個不同的函數。

在此示例中,公式用於返回與單元格 A2 中的名稱相關的銷售值。它在第 4 行中查找名稱,並從第 5 行傳回值:=XLOOKUP(A2,B4:E4,B5:E5)

XLOOKUP 可以自下而上查找

通常,您需要查找列表以查找第一次(通常是唯一一次)出現的值。XLOOKUP 有一個名為「搜索模式」的第六個參數。這使我們能夠將查找切換為從底部開始,並查找列表中最後一次出現的值。

在下面的示例中,我們希望在 A 列中查找每種產品的庫存水平。

查找表格按日期排序,每個產品都有多次庫存檢查。 我們希望傳回上次檢查時的庫存水平(最後一次出現的產品 ID)。

XLOOKUP 函數的第六個參數提供了四個選項。我們有興趣使用“從後到先搜索”選項。

完整的公式如下所示:=XLOOKUP(A2,$E$2:$E$9,$F$2:$F$9,,,-1)

在這個公式中,第四個和第五個參數被忽略了。 它是可選的,我們想要完全匹配的預設值。

總結

XLOOKUP 函數是 VLOOKUP 和 HLOOKUP 函數期待已久的後繼者

本文使用了各種範例來演示 XLOOKUP 的優勢。其中之一是 XLOOKUP 可以跨工作表、工作簿和表格使用。文章中的示例保持簡單,以便於理解。

隨著 動態陣列在 Excel 中的導入,它也可以傳回一系列值。這絕對值得進一步探索。

VLOOKUP 的日子屈指可數。 XLOOKUP 已嶄露頭角,並且很快將成為查找公式的事實標準。