KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何在 Excel 中執行從右向左的 VLOOKUP 值比對?

作者Xiaoyang修改日期

Excel 中的 VLOOKUP 函數廣泛用於搜尋與擷取資料,但其限制之一是僅能從左向右查詢:查詢值必須位於表格的第一欄,而返回值則需在該欄右側。那麼,若需從右向左查詢資料該如何處理?本指南將介紹多種解決方案,包括公式技巧與自動化 VBA 方法,助您靈活應對不符合傳統 VLOOKUP 需求的實際資料佈局。


使用 VLOOKUP 與 IF 函數由右向左查詢值

雖然 VLOOKUP 本身無法由右向左查詢資料,但搭配 IF 函數調整資料結構即可實現此功能。這項技巧特別適合偏好使用熟悉 Excel 函數、希望快速解決問題,又不想重新排列實際資料集的使用者。

請在目標儲存格中輸入下列公式,然後拖曳填滿控點至欲套用公式的儲存格,即可取得所有對應值。此方法適用於靜態範圍;若資料擴充或結構變更,則需手動調整。詳見截圖:

=VLOOKUP(E2, IF({1,0}, $C$2:$C$9, $A$2:$A$9), 2, 0)

公式說明:
  • E2:這是您要搜尋的值,也是 Excel 在限定區域中用來搜尋的關鍵字。
  • IF({1,0}, $C$2:$C$9, $A$2:$A$9):此公式透過重新排列欄位,建立一個虛擬表格。一般來說,VLOOKUP 僅能搜尋表格的第一欄,並從右側欄位傳回對應值。但透過使用 IF({1,0}, ......),您可指示 Excel 建立一個欄位順序交換後的新表格:
    ♦ 新表格的第一欄為 $C$2:$C$9.
    ♦ 新表格的第二欄為 $A$2:$A$9.
  • 2:這會指示 VLOOKUP 從 IF 函數所建立的虛擬表格中傳回第二欄的值。在此情況下,將從 $A$2:$A$9 傳回數值。
  • 0:這表示您需要完全符合。若 Excel 在 $C$2:$C$9 中找不到與 E2 完全相符的值,將傳回錯誤。

提示:若出現 #N/A 錯誤,請再次確認查詢值確實存在於查詢欄位中。此方法適用於簡單(靜態範圍)查詢,但對於大型動態範圍,或表格大小與位置經常變動的情況,可能較不適合。


使用 Kutools for Excel 由右向左查詢值

若您偏好更直覺友善的操作體驗,Kutools for Excel 提供強大的進階功能,輕鬆簡化複雜查詢,包括一鍵執行由右向左的搜尋。Kutools 特別適合希望擺脫繁瑣公式、無需手動設定即可快速取得高級搜尋選項的使用者。此方法無論資料規模大小,或您是否經常執行查詢,都能完美勝任。

Kutools for Excel 提供超過 300 項進階功能,簡化複雜作業,提升創造力與效率。整合 AI 功能,Kutools 能精準自動化各項任務,讓資料管理輕鬆無負擔。Kutools for Excel 的詳細資訊……         免費試用……

安裝 Kutools for Excel 後,請依下列步驟操作:

1. 點選「Kutools」>「進階 LOOKUP」>「從右到左查找」,詳情請參見截圖:

2. 在「從右到左查找」對話方塊中,請執行以下操作:

  • 從「列表放置區域」和「待檢索值區域」區段中選取查詢值儲存格與輸出儲存格;
  • 接著,在「數據區域」區段中指定對應項目,並確保所選範圍準確無誤,以避免比對錯誤。
  • 最後,點擊「確定」按鈕。
     在對話框中指定選項

3. 現已根據待檢索值區域,從右側清單中傳回相符的記錄,詳情請見截圖:

 使用 Kutools 從右向左查詢數值

提示:

若要將 #N/A 錯誤值替換為其他文字,只需點擊「選項」按鈕,勾選「用指定的值替換找不到資料時所傳回的“#N/A”結果」,並輸入您想要顯示的文字即可。
 將 #N/A 錯誤值取代為指定的值選項

當您在分享工作表時,此功能格外實用,能有效避免最終輸出中出現錯誤訊息。


使用 INDEX 與 MATCH 函數由右向左查詢值

INDEX 與 MATCH 的組合是 VLOOKUP 的多功能強大替代方案,能朝任何方向(左、右、上、下)查詢數值,提供更出色的彈性——特別適用於查詢欄位不在資料區域第一欄的情況。此組合尤其適合處理大型資料集,以及欄位位置可能變動的動態表格。

將下方公式輸入或複製到空白儲存格以取得結果,然後向下拖曳填滿控點,套用至您所需的儲存格範圍。請確保所選範圍涵蓋所有相關資料;若您希望在向下複製公式時固定查閱範圍,請使用絕對參照(以 $ 符號標示)。

=INDEX($A$2:$A$9,MATCH(E2,$C$2:$C$9,0))

公式說明:
  • E2:這是要搜尋的值。
  • MATCH(E2, $C$2:$C$9,0)MATCH 函數會在範圍 $C$2:$C$9 中搜尋 E2 的值,其中 0 表示必須完全相符;若找到該值,便會傳回其在該範圍內的相對位置。
  • INDEX($A$2:$A$9, ...) 接著,INDEX 函數會根據 MATCH 所傳回的位置,在範圍 $A$2:$A$9 中找出對應的值。

提示:若需跨多欄執行查詢,可調整 INDEX 範圍或強化公式以支援多條件比對。若您經常更新資料或處理大型表格,使用 INDEX 與 MATCH 通常比 VLOOKUP 更穩健,無需移動欄位或重建查詢表格!


使用 XLOOKUP 函數從右向左查閱數值

若您使用的是 Excel 365 或 Excel 2021,XLOOKUP 函數正是 VLOOKUP 的現代化簡潔替代方案。它能向任意方向查找數值,無需繁複公式,為追求更簡潔、彈性工作方式且使用 Excel 最新版本的使用者量身打造。與 VLOOKUP 或 HLOOKUP 不同,XLOOKUP 無需返回欄位位於搜尋範圍的右側,大幅提升了靈活性。

將下列公式輸入或複製到空白儲存格以顯示結果,然後向下拖曳填滿控點,套用至您所需的儲存格範圍。此方法特別適用於共用活頁簿,或建立可能搭配變動資料結構使用的模板時。

=XLOOKUP(E2,$C$2:$C$9,$A$2:$A$9)

公式說明:
  • E2:這是您要搜尋的值。
  • $C$2:$C$9 這是 Excel 用來搜尋 E2 值的範圍,也就是查詢陣列。
  • $A$2:$A$9 這是 Excel 傳回對應值的範圍,也就是傳回的陣列。

注意事項:XLOOKUP 函數僅適用於 Excel 365 與 Excel 2021,舊版 Excel 無法使用。若您使用的是舊版本,請採用上述 INDEX 搭配 MATCH 的方法,或考慮其他替代方案(如 VBA)。


使用 VBA 巨集自動執行從右向左的查閱作業

當公式導向的解決方案過於受限,或您需要自動化重複性的查閱作業時,運用 VBA(Visual Basic for Applications)即可實現強大的從右向左查閱功能,甚至支援更複雜的條件判斷與批次處理。此方法特別適合處理大型資料集、需要自動化流程,或執行一般公式難以達成的任務。不過,使用 VBA 需啟用巨集,並具備 Excel 開發環境的基本知識。

適用情境:自動化報表、處理動態範圍、操作非連續資料,或需套用條件式與多層級準則時。

優點:高度彈性、可重複使用,且能自由自訂。缺點:需啟用巨集並具備基本腳本知識;不適用於限制使用巨集的共用活頁簿。

如何使用此 VBA 解決方案:

1. 按一下開發人員 > Visual Basic,即可開啟 VBA 編輯器。在新開啟的 Microsoft Visual Basic for Applications 視窗中,按一下插入 > 模組,並將下列程式碼貼上至模組視窗中:

Sub RightToLeftVlookup()
    Dim lookupValue As Variant
    Dim searchRange As Range, returnRange As Range
    Dim resultCell As Range
    Dim foundCell As Range
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set searchRange = Application.InputBox("Select the range to search (lookup column):", xTitleId, Type:=8)
    Set returnRange = Application.InputBox("Select the range to return value from (target column):", xTitleId, Type:=8)
    Set resultCell = Application.InputBox("Select the cell to output the result:", xTitleId, Type:=8)
    lookupValue = Application.InputBox("Enter the value to look up:", xTitleId, Type:=2)
    
    If searchRange Is Nothing Or returnRange Is Nothing Or resultCell Is Nothing Or lookupValue = "" Then
        MsgBox "Operation cancelled.", vbExclamation
        Exit Sub
    End If
    
    Set foundCell = searchRange.Find(lookupValue, LookIn:=xlValues, LookAt:=xlWhole)
    
    If Not foundCell Is Nothing Then
        Dim rowOffset As Long
        rowOffset = foundCell.Row - searchRange.Rows(1).Row + 1
        resultCell.Value = returnRange.Cells(rowOffset, 1).Value
    Else
        resultCell.Value = "#N/A"
    End If
End Sub

2. 貼上程式碼後,關閉 VBA 編輯器並返回 Excel,接著按下 F5 鍵 或點擊執行按鈕,立即啟動巨集!

3. 依照提示選取您的查閱欄位(即包含搜尋值的欄位)、返回欄位(即您希望取得結果的來源欄位)、輸出儲存格,以及查閱值本身。此巨集將自動將符合條件的數值從返回欄位填入您的結果儲存格,即使該欄位位於查閱欄位的左側也能順利運作。

疑難排解與技巧:

  • 請確保搜尋範圍與傳回範圍的列數相同,且皆為垂直方向(逐列對齊),以確保結果準確無誤。
  • 若您的資料分散於不同工作表中,請在提示時適當地選擇區域,同時務必確保各列對齊。
  • 若未找到查詢值,巨集將在指定儲存格中傳回「#N/A」。若出現此結果,請再次確認查詢範圍與值的拼寫是否正確。
  • 若要將巨集套用至多個待檢索值區域,可進一步修改巨集,使其循環處理各個值範圍,或針對每個所需值重複執行。
  • 必須在您的活頁簿中啟用巨集,VBA 程式碼才能順利執行。

此 VBA 巨集是自動化從右向左查閱作業的理想選擇,尤其當您經常執行此類任務,或需要比公式更靈活的邏輯判斷與進階、可變條件時。


雖然 VLOOKUP 是執行基本查閱作業的優良工具,但其僅能向查閱欄位右側搜尋的限制相當明顯。不過,Excel 中仍有多種替代方法,可輕鬆實現從右向左傳回相符數值!善用這些技巧,無論資料位於工作表何處,您都能高效完成查閱與傳回任務。實用建議包括:仔細檢查查閱範圍、確認完全比對,並根據您的 Excel 版本與工作流程需求,選擇最合適的方法。若出現 #N/A 等錯誤,請務必確認查閱值是否存在,且陣列大小一致。使用 VBA 或 Kutools 等增益集時,務必先儲存檔案,並在重要工作表上部署前,先於樣本資料進行測試。想掌握更多 Excel 實用技巧?我們的網站提供數千篇教學文章立即探索,提升工作效率!


更多相關文章:

  • 跨多個工作表執行 VLOOKUP 查詢值
  • 在 Excel 中,我們可以輕鬆運用 VLOOKUP 函數,在單一工作表的表格中快速取得比對值。但您是否想過,如何跨多個工作表執行 VLOOKUP 查詢?假設您有以下三個包含資料範圍的工作表,現在希望根據特定條件,從這三個工作表中擷取對應的值。
  • 在 Excel 中使用 VLOOKUP 精確與近似比對
  • 在 Excel 中,VLOOKUP 是最重要的函數之一,能根據表格最左欄的值進行搜尋,並傳回同一列中指定範圍的對應值。但您是否已順利掌握 VLOOKUP 函數的運用?本文將為您詳解如何在 Excel 中使用 VLOOKUP 函數。
  • 在 Excel 中從下往上執行 VLOOKUP 比對值
  • 一般來說,VLOOKUP 函數能幫您從清單中由上往下找出第一個相符的值。但有時您需要反向操作,從下往上查找以取得最後一個對應值。您是否知道在 Excel 中有什麼好方法可以完成這項任務?

  • 在 Excel 中執行 VLOOKUP 並串連多個對應值
  • 眾所皆知,Excel 的 VLOOKUP 函數可協助我們查詢值並傳回另一欄中的對應資料,但通常若存在多筆比對資料,僅能取得第一個相關值。本文將說明如何使用 VLOOKUP 並在單一儲存格或垂直清單中串連多個對應值。

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行     產生程式碼  建立自訂公式    分析資料並產生圖表  呼叫增強函數……
熱門功能尋找、醒目提示或標記重複值     刪除空白行     合併列或儲存格而不遺失資料     不使用公式的四捨五入……
高級 LOOKUP多重條件 VLookup    多重數值 VLookup     跨多個工作表 VLookup      模糊查找……
高級下拉列表快速建立下拉式清單     相依式下拉式清單     多選下拉式清單……
欄位管理員新增指定數量的欄位移動欄位切換隱藏欄位的可見狀態比較範圍與欄位……
精選功能網格聚焦     設計視圖   增強編輯欄    工作簿與工作表管理員     資源庫(自動文字)  日期提取     合併工作表    加密/解密儲存格    依清單傳送電子郵件     超級篩選      特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組12 文字工具添加文本刪除特定字符,……)   50+ 圖表 類型甘特圖,……)   40+ 實用公式基於生日計算年齡,……)   19 插入工具插入二維碼從路徑插入圖片,……)   12 轉換工具金額轉大寫匯率轉換,……)   7 合併和拆分工具高級合併行分割儲存格,……)……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用