Skip to main content

Kutools for Office — 一套工具,五種功能。完成更多工作。

如何在 Excel 中使用 vlookup 返回單一單元格中的多個值?

Author Xiaoyang Last modified

VLOOKUP 是 Excel 中一個強大的函數,但默認情況下,它只返回第一個匹配的值。如果你需要獲取所有匹配的值並將它們合併到一個單元格中該怎麼辦呢?這在分析數據集或總結信息時是一個常見的需求。在本指南中,我們將逐步介紹如何使用公式和實用功能將多個值返回到單一單元格中。

使用 TEXTJOIN 函數將多個值返回到一個單元格(Excel 2019 和 Office 365)

使用 Kutools 將多個值返回到一個單元格

使用用戶定義函數將多個值返回到一個單元格

vlookup to return multiple values in one cell


使用 TEXTJOIN 函數將多個值返回到一個單元格(Excel 2019 和 Office 365)

如果你使用的是較高版本的 Excel,例如 Excel 2019 和 Office 365,有一個新函數 - TEXTJOIN,通過這個強大的函數,你可以快速進行 vlookup 並返回所有匹配的值到一個單元格中。

將所有匹配的值返回到一個單元格

請將以下公式應用到你想放置結果的空白單元格中,然後按 Ctrl + Shift + Enter 鍵一起以獲得第一個結果,然後拖動填充柄向下到你想要使用的單元格,你將獲得如下截圖所示的所有對應值:

=TEXTJOIN(",",TRUE,IF($A$2:$A$11=E2,$C$2:$C$11,""))

備註: 在上述公式中,A2:A11 是包含查找數據的查找範圍,E2 是查找值,C2:C11 是你希望返回匹配值的數據範圍,"," 是用於分隔多條記錄的區分符。

將所有不重複的匹配值返回到一個單元格

如果你想根據查找數據返回所有匹配的值且不包含重複項,下面的公式可能會幫助你。

請將以下公式複製並粘貼到空白單元格中,然後按 Ctrl + Shift + Enter 鍵一起以獲得第一個結果,然後複製此公式填滿其他單元格,你將獲得如下截圖所示的所有對應值且沒有重複項:

=TEXTJOIN(",", TRUE, IF(IFERROR(MATCH($C$2:$C$11, IF(E2=$A$2:$A$11, $C$2:$C$11, ""), 0),"")=MATCH(ROW($C$2:$C$11), ROW($C$2:$C$11)), $C$2:$C$11, ""))

備註: 在上述公式中,A2:A11 是包含查找數據的查找範圍,E2 是查找值,C2:C11 是你希望返回匹配值的數據範圍,"," 是用於分隔多條記錄的區分符。

使用 Kutools 將多個值返回到一個單元格

借助 Kutools for Excel 的「高級合併行」功能,你可以輕鬆地將多個匹配值檢索到單一單元格中——無需複雜的公式!告別手動操作,解鎖更高效的方式來處理你在 Excel 中的查找任務。讓我們來看看 Kutools for Excel 如何實現這一切!

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

安裝 Kutools for Excel 後,請按照以下步驟操作:

1. 選擇你希望根據另一列合併一列數據的數據範圍。

2. 點擊「Kutools」 > 「合併與拆分」 > 「高級合併行」,見截圖:

3. 在彈出的「高級合併行」對話框中:

  • 點擊要基於其進行合併的關鍵列名稱,然後點擊「主鍵」。
  • 然後點擊另一列,你希望根據關鍵列合併其數據,並從「計算」字段的下拉列表中選擇一個區分符以分隔合併的數據,從「合併」部分選擇。
  • 然後,點擊確定按鈕。

specify options in the dialog box

來自另一列的所有對應值,基於相同的值,被合併到單一單元格中。見截圖:

original data arrow right all cell values are extracted into one cell based on the same data

提示:如果在合併單元格時想刪除重複內容,只需在對話框中勾選「刪除重複值」選項即可。這確保只有唯一的條目被合併到單一單元格中,使你的數據更加整潔有序,而無需額外努力。見截圖:

original data arrow right all cell values are extracted into one cell skip the duplicates

立即下載並免費試用 Kutools for Excel!


使用用戶定義函數將多個值返回到一個單元格

上述 TEXTJOIN 函數僅適用於 Excel 2019 和 Office 365,如果你使用的是其他較低版本的 Excel,則應該使用一些代碼來完成此任務。

將所有匹配的值返回到一個單元格

1. 按住「ALT + F11」鍵,打開「Microsoft Visual Basic for Applications」窗口。

2. 點擊「插入」 > 「模塊」,並將以下代碼粘貼到模塊窗口中。

VBA 代碼:Vlookup 返回多個值到一個單元格

Function ConcatenateIf(CriteriaRange As Range, Condition As Variant, ConcatenateRange As Range, Optional Separator As String = ",") As Variant
'Updateby Extendoffice
Dim xResult As String
On Error Resume Next
If CriteriaRange.Count <> ConcatenateRange.Count Then
    ConcatenateIf = CVErr(xlErrRef)
    Exit Function
End If
For i = 1 To CriteriaRange.Count
    If CriteriaRange.Cells(i).Value = Condition Then
        xResult = xResult & Separator & ConcatenateRange.Cells(i).Value
    End If
Next i
If xResult <> "" Then
    xResult = VBA.Mid(xResult, VBA.Len(Separator) + 1)
End If
ConcatenateIf = xResult
Exit Function
End Function

3. 然後保存並關閉此代碼,返回工作表,並輸入此公式: =CONCATENATEIF($A$2:$A$11, E2, $C$2:$C$11, ", ") 到你希望放置結果的特定空白單元格中,然後拖動填充柄向下以獲取你希望的一個單元格中的所有對應值,見截圖:

Vlookup to return all matching values into one cell with user defined function

備註: 在上述公式中,A2:A11 是包含查找數據的查找範圍,E2 是查找值,C2:C11 是你希望返回匹配值的數據範圍,"," 是用於分隔多條記錄的區分符。

將所有不重複的匹配值返回到一個單元格

要忽略返回匹配值中的重複項,請使用以下代碼。

1. 按住「Alt + F11」鍵打開「Microsoft Visual Basic for Applications」窗口。

2. 點擊「插入」 > 「模塊」,並將以下代碼粘貼到模塊窗口中。

VBA 代碼:Vlookup 並返回多個唯一匹配值到一個單元格

Function MultipleLookupNoRept(Lookupvalue As String, LookupRange As Range, ColumnNumber As Integer)
'Updateby Extendoffice
    Dim xDic As New Dictionary
    Dim xRows As Long
    Dim xStr As String
    Dim i As Long
    On Error Resume Next
    xRows = LookupRange.Rows.Count
    For i = 1 To xRows
        If LookupRange.Columns(1).Cells(i).Value = Lookupvalue Then
            xDic.Add LookupRange.Columns(ColumnNumber).Cells(i).Value, ""
        End If
    Next
    xStr = ""
    MultipleLookupNoRept = xStr
    If xDic.Count > 0 Then
        For i = 0 To xDic.Count - 1
            xStr = xStr & xDic.Keys(i) & ","
        Next
        MultipleLookupNoRept = Left(xStr, Len(xStr) - 1)
    End If
End Function

3. 插入代碼後,然後點擊「工具」 > 「引用」在打開的「Microsoft Visual Basic for Applications」窗口中,然後,在彈出的「引用 – VBAProject」對話框中,勾選「可用引用」列表框中的「Microsoft Scripting Runtime」選項,見截圖:

click Tools > References arrow right check Microsoft Scripting Runtime option

4. 然後點擊確定關閉對話框,保存並關閉代碼窗口,返回工作表,並輸入此公式: =MultipleLookupNoRept(E2,$A$2:$C$11,3) 到你希望輸出結果的空白單元格中,然後拖動填充柄向下以獲取所有匹配值,見截圖:

Vlookup to return all matching values without duplicates into one cell by user defined function

備註: 在上述公式中,A2:C11 是你希望使用的數據範圍,E2 是查找值,數字 3 是包含返回值的列號。

無論你選擇像 TEXTJOIN 與數組函數結合的公式、利用像 Kutools for Excel 或用戶定義函數這樣的工具,所有方法都有助於簡化複雜的查找任務。選擇最適合你需求的方法。如果你有興趣探索更多 Excel 技巧,我們的網站提供了成千上萬的教程


更多相關文章:

  • VLOOKUP 函數的一些基本和高級示例
  • 在 Excel 中,VLOOKUP 函數對於大多數 Excel 用戶來說是一個強大的函數,用於在數據範圍的最左側查找值,並從指定的列中返回同一行的匹配值。本教程討論了如何在 Excel 中使用 VLOOKUP 函數的一些基本和高級示例。
  • 根據一個或多個條件返回多個匹配值
  • 通常,查找特定值並返回匹配項目對我們大多數人來說很容易,使用 VLOOKUP 函數即可。但是,你是否嘗試過根據一個或多個條件返回多個匹配值呢?在本文中,我將介紹一些解決此複雜任務的公式。
  • Vlookup 並垂直返回多個值
  • 通常,你可以使用 Vlookup 函數獲取第一個對應值,但有時你希望根據特定條件返回所有匹配記錄。本文將談論如何 vlookup 並垂直、水平或進入單一單元格返回所有匹配值。
  • Vlookup 並從下拉列表返回多個值
  • 在 Excel 中,如何能夠 vlookup 並從下拉列表返回多個相應值,這意味著當你從下拉列表中選擇一個項目時,所有相關值都會立即顯示。本文將逐步介紹解決方案。

最佳 Office 生產力工具

🤖 Kutools AI 助手:以智能執行為基礎,革新數據分析 生成程式碼 創建自訂公式 分析數據並生成圖表 調用 Kutools 增強函數
熱門功能查找、選取項目的背景色或標記重複值刪除空行合併列或單元格且不遺失數據四捨五入(免公式)...
高級 LOOKUP多條件 VLookup多值 VLookup多表查找模糊查找...
高級下拉列表快速創建下拉列表 依賴型下拉列表 多選下拉列表...
列管理器添加指定數量的列移動列切換隱藏列的顯示狀態比較區域及列...
精選功能網格聚焦 設計檢視 增強編輯欄 工作簿及工作表管理器 資源庫(快捷文本) 日期提取器 合併資料 加密/解密儲存格 按列表發送電子郵件 超級篩選 特殊篩選(篩選粗體/傾斜/刪除線...)...
15 大工具集12 項文本工具添加文本刪除特定字符…)50+ 儀表 類型甘特圖等)40+ 實用 公式基於生日計算年齡等)19 項插入工具插入QR码根據路徑插入圖片等)12 項轉換工具金額轉大寫匯率轉換等)7 項合併與分割工具高級合併行分割儲存格等)...及更多
使用 Kutools,語言任你選 — 支援英語、西班牙語、德語、法語、中文及超過40 種語言!

運用 Kutools for Excel,全面提升您的 Excel 技能,體驗前所未有的高效。 Kutools for Excel 提供超過300 項進階功能,讓您提升工作效率、節省時間。 點此尋找您最需要的功能...


Office Tab 為 Office 帶來分頁介面,讓您的工作更加輕鬆簡單

  • 在 Word、Excel、PowerPoint 中啟用分頁編輯與閱讀
  • 在同一視窗的新分頁中打開與創建多份文件,而非開啟新視窗。
  • 提升您的生產力50%,每日可幫您減少數百次鼠標點擊!

所有 Kutools 外掛,一次安裝

Kutools for Office 套裝整合了 Excel、Word、Outlook 和 PowerPoint 的外掛,外加 Office Tab Pro,非常適合需要跨 Office 應用程式協同作業的團隊。

Excel Word Outlook Tabs PowerPoint
  • 全合一套裝 — Excel、Word、Outlook及 PowerPoint 外掛 + Office Tab Pro
  • 一鍵安裝,一份授權 — 幾分鐘完成設置(支援 MSI)
  • 協同運作更順暢 — Office 應用間無縫提升生產力
  • 30 天全功能試用 — 無需註冊、無需信用卡
  • 最超值 — 一次購買,節省單獨外掛費用