Arrays 如何在Excel中返回与特定条件匹配的数组?

Arrays 如何在Excel中返回与特定条件匹配的数组?,arrays,excel,Arrays,Excel,我试图在Excel中解析一个XML文件,这是一本日语词典。它包含每个条目到不同语言的多个翻译,有些条目在每种语言中有多个翻译。我想编写一个公式,通过语言代码查找所有翻译,将它们作为数组返回,并使用TEXTJOIN公式连接它们。但我不知道如何在Excel中实现这一点 在GoogleSheets中,这个问题很容易通过过滤功能解决,但我不能使用表格,因为有太多的数据,而且我还没有访问beta过滤功能 在下图中,我试图通过搜索lang列中的值来返回列中的值。例如,我想返回所有旁边有一个“dut”的值,并

我试图在Excel中解析一个XML文件,这是一本日语词典。它包含每个条目到不同语言的多个翻译,有些条目在每种语言中有多个翻译。我想编写一个公式,通过语言代码查找所有翻译,将它们作为数组返回,并使用
TEXTJOIN
公式连接它们。但我不知道如何在Excel中实现这一点

在GoogleSheets中,这个问题很容易通过过滤功能解决,但我不能使用表格,因为有太多的数据,而且我还没有访问beta过滤功能

在下图中,我试图通过搜索
lang
列中的值来返回
列中的值。例如,我想返回所有旁边有一个“dut”的值,并使用
TEXTJOIN
将它们连接到一行中

你知道我该怎么做吗


我通过下载
过滤器
功能解决了这个问题。这是Office Insider计划的一部分,如果您选择参与,该计划将发布测试版功能。您可以通过进入文件>帐户>Office Insider来访问Insider程序。然后,要更新Office版本,请转到文件>帐户>Office更新以安装Insider更新

要按“lang”列筛选列表,公式如下所示:

=FILTER([range in H column], [range in I column]=T$2)
我没有指定任何一个范围,因为我使用了一个公式定义的范围,使用
间接
函数来避免筛选一百万行。H范围是我想要的过滤器结果,I范围是我想要过滤的“lang”代码。T$2表示“lang”代码,在本例中为“dut”,当我复制它时,它将按第2行中8个lang代码中的每一个进行过滤

然后我使用
TEXTJOIN
使用逗号分隔符将数组结果合并为一列:

=TEXTJOIN(", ", TRUE, FILTER(...))

尝试将
=IF(H1047878=“”,“”,G1047878&T1047879)
放入T1047878。然后向下拖动。。它能工作吗?不,那不行,因为我试图在H列中找到与T2:AA2(“dut”、“ger”、“rus”等)中的三个字母代码匹配的元素,所以我想找到与此代码匹配的所有实例,然后查找它旁边的单元格,然后将所有这些结果返回到一个数组中,并将其连接到一个单元格中。您能否准确地共享预期的完整输出?(与它所需的位置)没关系,我刚刚解决了这个问题,下载了更新版本的Excel,它有过滤功能。由于一个愚蠢的原因,我不知道如何下载这个版本。现在我已经实现了我想要的功能,我可能会很快发布答案。请将其作为答案发布。。。因为它将从“未回答”列表中删除此问题这将使别人受益/(^_^)