Excel VLOOKUP/具有多个匹配项的匹配

Excel VLOOKUP/具有多个匹配项的匹配,excel,excel-formula,vlookup,Excel,Excel Formula,Vlookup,我不知道如何做一些我认为你们中的一位大师以前做过的事情,不应该太有挑战性。我的工作簿中有两张工作表(我们称它们为ITEMS和loc)。 图纸项目在a列中有一个唯一项目列表(大约10000个),图纸LOC在a列中有项目,在B列中有项目位置。现在问题出现了,因为许多项目有多个位置(最多五个),因此占据LOCS表上的多行。有没有一种方法可以在我的项目表的B列中使用VLOOKUP或MATCH的组合,将所有位置放在一个单元格中,并用逗号分隔。显然,如果我将=VLOOKUP($A:$A,LOCS!$A:$B

我不知道如何做一些我认为你们中的一位大师以前做过的事情,不应该太有挑战性。我的工作簿中有两张工作表(我们称它们为ITEMS和loc)。 图纸项目在a列中有一个唯一项目列表(大约10000个),图纸LOC在a列中有项目,在B列中有项目位置。现在问题出现了,因为许多项目有多个位置(最多五个),因此占据LOCS表上的多行。有没有一种方法可以在我的项目表的B列中使用VLOOKUP或MATCH的组合,将所有位置放在一个单元格中,并用逗号分隔。显然,如果我将
=VLOOKUP($A:$A,LOCS!$A:$B,2,0)
放入单元格项中!B1它将只返回第一个位置。理想情况下,我希望它能显示这样的东西:架子、桌子、地板。任何正确方向的想法或建议都将不胜感激——非常感谢


如果您有权使用新的动态数组公式,则可以使用以下公式并根据需要向下拖动:

单元格E2:
=TEXTJOIN(“,”,TRUE,过滤器(B2:B14,A2:A14=D2))



如果您有权使用新的动态数组公式,则可以使用以下公式并根据需要向下拖动:

单元格E2:
=TEXTJOIN(“,”,TRUE,过滤器(B2:B14,A2:A14=D2))



如果您使用的是Office 365,那么您就可以享受了

这是我的LOCS表-

使用
TEXTJOIN
和数组公式(确保使用
Ctrl+Shift+Enter
)-

=TEXTJOIN(“,”,1,IF(LOCS!$A$2:$A$10=A2,LOCS!$B$2:$B$10,”)

结果-


如果您使用的是Office 365,那么您就可以享受了

这是我的LOCS表-

使用
TEXTJOIN
和数组公式(确保使用
Ctrl+Shift+Enter
)-

=TEXTJOIN(“,”,1,IF(LOCS!$A$2:$A$10=A2,LOCS!$B$2:$B$10,”)

结果-



发布一些示例数据和期望的结果。我为大家发布了一些数据!希望这能让我的问题更清楚。我对VBA很陌生,但我慢慢掌握了它的窍门,所以如果这是最好的方法,我会理解,我也相信这应该可以通过PowerQuery作为公式之外的另一个选项来实现。我为大家发布了一些示例数据和期望的结果。我为大家发布了一些数据!希望这能让我的问题更清楚。我对VBA非常陌生,但我慢慢地掌握了窍门,因此如果这是最好的方法,我会理解,我也相信这应该可以通过PowerQuery作为公式之外的另一个选项来实现。我相信,
过滤器
会更快,因为与条件过滤器相比,它在后端的计算速度很可能更快语句类似于
IF
。我不确定是否可以访问
TEXTJOIN
FILTER
功能。现在看来,访问新的动态数组公式并不是常态,这是真的——即使现在我在一台可以访问TEXTJOIN但还没有过滤器的计算机上。迫不及待所有的新功能被广泛发布,这些将大大提高性能。太棒了!这真是太感谢了,谁会想到365许可证支付了这么多感谢@JustynaMK澄清了这一点。你的解决方案将适用于比我更多的人,因为他们无法获得新的配方。新的公式肯定会改变游戏规则。
UNIQUE
函数是我最喜欢的函数,到目前为止,我相信
FILTER
会更快,因为它很可能在后端比像
IF
这样的条件语句计算得更快。我不确定是否可以访问
TEXTJOIN
而不能访问
FILTER
功能。现在看来,访问新的动态数组公式并不是常态,这是真的——即使现在我在一台可以访问TEXTJOIN但还没有过滤器的计算机上。迫不及待所有的新功能被广泛发布,这些将大大提高性能。太棒了!这真是太感谢了,谁会想到365许可证支付了这么多感谢@JustynaMK澄清了这一点。你的解决方案将适用于比我更多的人,因为他们无法获得新的配方。新的公式肯定会改变游戏规则。迄今为止,
独特的
功能是我最喜欢的。哇,很漂亮。比我想象的要容易得多。我想我有一个新的最喜欢的功能。非常感谢!没问题-我承认这也是我最喜欢的功能之一!我还想知道你是否有权使用FILTER,因为第二个解决方案可能更快(不幸的是,我是其中一个还不能使用它的用户)。我有FILTER(Mac上的Office 365)。它在近45000个地点的近10000个项目中飞行。对于我的工作流来说,这无疑是一个改变游戏规则的工具。如果您想尝试,这些功能可以在Excel Online上免费使用。这也是我做这些事情的方式(不幸的是我只有Excel 2019)。哦,那太酷了!谢谢@JvdV的提示,我一定会试试的。哇,太棒了。比我想象的要容易得多。我想我有一个新的最喜欢的功能。非常感谢!没问题-我承认这也是我最喜欢的功能之一!我还想知道你是否有权使用FILTER,因为第二个解决方案可能更快(不幸的是,我是其中一个还不能使用它的用户)。我有FILTER(Mac上的Office 365)。它在近45000个地点的近10000个项目中飞行。对于我的工作流来说,这无疑是一个改变游戏规则的工具。如果您想尝试,这些功能可以在Excel Online上免费使用。这也是我做这些事情的方式(不幸的是我只有Excel 2019)。哦,那太酷了!谢谢@JvdV的提示,我一定会尝试一下。