跳到主要内容

如何在Excel中vlookup并连接多个对应值?

作者:晓阳 最后修改时间:2025-01-15

当您在 Excel 中使用 VLOOKUP 时,它通常会返回数据集中的第一个匹配值。但是,在某些情况下,您可能需要返回并连接多个相应的值(例如,与特定类别相关的所有名称)。由于仅使用 VLOOKUP 无法实现这一点,我们将探索实现所需结果的高级技术。


使用 TEXTJOIN 和 FILTER 函数查找并连接多个相应值

如果您使用的是 Excel 365 或 Excel 2021,TEXTJOIN 和 FILTER 函数的组合提供了一种强大而有效的方法来连接多个相应的值。

在目标单元格中​​输入以下公式,然后将公式拖到其他单元格以填充单元格。所有相应的匹配值都会被提取并合并到一个单元格中。见截图:

=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$16, $A$2:$A$16=D2, ""))

使用 TEXTJOIN 和 FILTER 函数查找并连接多个值

这个公式的解释:
  1. FILTER($B$2:$B$16, $A$2:$A$16=D2, ""):返回包含所有满足条件的值的数组。
    • $ B $ 2:$ B $ 16:需要过滤的数据范围。
    • $ A $ 2:$ A $ 16 = D2:过滤条件,其中 $A$2:$A$16 中的值必须等于单元格 D2 中的值。
  2. TEXTJOIN(“,”,TRUE,...):将所有匹配的值合并为一个字符串,以逗号和空格分隔。
    • ", ":用于分隔每个值的分隔符(在本例中为逗号和空格)。
    • TRUE:忽略空值以确保不包含额外的分隔符。

使用 Kutools for Excel 查找并连接多个相应值

在处理多个对应值时厌倦了Excel的VLOOKUP限制? 但是使用Kutools for Excel的一对多查找功能,您只需单击几下即可轻松查找和连接多个对应值!

Kutools for Excel 提供 300 多种高级功能来简化复杂任务,提高创造力和效率。 增强人工智能功能,Kutools 可以精确地自动执行任务,使数据管理变得毫不费力。 Kutools for Excel 的详细信息...         免费试用...

安装后 Kutools for Excel,请这样做:

点击 库工具 > 超级查询 > 一对多查找(返回多个结果) 打开对话框。在对话框中,请指定以下操作:

  1. 点击 输出范围查询值 在文本框中分别;
  2. 选择您想要使用的表格范围;
  3. 从中指定键列和返回列 键列n和 返回列 单独下拉;
  4. 最后,点击 OK 按钮。
    在对话框中指定选项

结果:现在,所有匹配的值都连接到一个单元格中。见截图:
根据 kutools 的标准进行连接


使用用户定义函数查找并连接多个相应值

如果您熟悉 VBA(Visual Basic for Applications),则可以创建用户定义函数 (UDF) 来连接多个相应的值。此方法可高度自定义,适用于所有版本的 Excel。

1. 按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。

2。 点击 插页 > 模块,然后将以下代码粘贴到 模块 窗口。

VBA代码:Vlookup并连接单元格中的多个匹配值

Function ConcatenateMatches(LookupValue As String, LookupRange As Range, ReturnRange As Range, Optional Delimiter As String = ", ") As String
'Updateby Extendoffice
    Dim Cell As Range
    Dim Result As String
    Result = ""
    For Each Cell In LookupRange
        If Cell.Value = LookupValue Then
            Result = Result & Cell.Offset(0, ReturnRange.Column - LookupRange.Column).Value & Delimiter
        End If
    Next Cell
    If Result <> "" Then
        Result = Left(Result, Len(Result) - Len(Delimiter))
    End If
    ConcatenateMatches = Result
End Function

3。 然后保存并关闭此代码,返回到工作表,然后输入以下公式: =ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) 到您想要放置结果的空白单元格中,然后向下拖动填充柄以将公式填充到其他单元格。基于特定数据的所有对应值都已返回到一个单元格中,并使用逗号和空格分隔符,见屏幕截图:

根据 vba 的标准进行连接

这个公式的解释:
  • D2:这是您在指定范围内查找的值(LookupValue)。
  • A2:A16:函数搜索查找值的范围(LookupRange)。
  • B2:B16:查找值匹配时要连接的值的范围(ReturnRange)。

在 Excel 中连接多个对应值可以通过各种方法实现,每种方法都有各自的优点。无论您喜欢使用内置函数(如 TEXTJOIN 和 FILTER)、第三方工具(如 Kutools)还是自定义 VBA 解决方案,关键是选择最适合您的 Excel 版本、技能水平和特定要求的方法。如果您有兴趣探索更多 Excel 技巧和窍门, 我们的网站提供数千个教程.

最佳办公生产力工具

🤖 Kutools 人工智能助手:基于以下内容彻底改变数据分析: 智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用 Kutools 函数...
热门特色: 查找、突出显示或识别重复项   |  删除空白行   |  合并列或单元格而不丢失数据   |   不使用公式进行四舍五入 ...
超级查询: 多条件VLookup    多值VLookup  |   跨多个工作表的 VLookup   |   模糊查询 ....
高级下拉列表: 快速创建下拉列表   |  依赖下拉列表   |  多选下拉列表 ....
列管理器: 添加特定数量的列  |  移动列  |  切换隐藏列的可见性状态  |  比较范围和列 ...
特色功能: 网格焦点   |  设计图   |   大方程式酒吧    工作簿和工作表管理器   |  资源库 (自动文本)   |  日期选择器   |  合并工作表   |  加密/解密单元格    按列表发送电子邮件   |  超级筛选   |   特殊过滤器 (过滤粗体/斜体/删除线...)...
前 15 个工具集12 文本 工具 (添加文本, 删除字符,...)   |   50+ 图表 类型 (甘特图,...)   |   40+ 实用 公式 (根据生日计算年龄,...)   |   19 插入 工具 (插入二维码, 从路径插入图片,...)   |   12 转化 工具 (小写金额转大写, 货币兑换,...)   |   7 合并与拆分 工具 (高级组合行, 分裂细胞,...)   |   ... 和更多

使用 Kutools for Excel 增强您的 Excel 技能,体验前所未有的效率。 Kutools for Excel 提供了 300 多种高级功能来提高生产力并节省时间。  单击此处获取您最需要的功能...


Office Tab 为 Office 带来选项卡式界面,让您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!