9

我尝试在其中使用带有IF的TextJoin 函数,但它似乎不起作用。我想我已经正确地编写了公式,但它并没有给出我试图得到的解决方案。

目标: 我希望仅当 B 列的值与 D 列的值匹配时才打印出 A 列的值。预期的结果应该是 1,2,3,6

有谁知道我该怎么做?我做错什么了吗?顺便说一句,我正在使用谷歌电子表格。

在此处输入图像描述

4

2 回答 2

11

您的公式有效,您只需将其作为数组公式输入,按住ctrl+shift并按enter使其成为数组公式。它应该看起来像:

=ArrayFormula(TEXTJOIN(", ",true,if(B1:B6 = D1,A1:A6,"")))  

您还可以使用过滤器功能

=TEXTJOIN(", ",true,FILTER(A1:A6,B1:B6 = D1))
于 2017-08-15T03:18:23.210 回答
3

if 只是给出一个结果,而不是一系列结果。你需要:

=textjoin(" ,",true,arrayformula(if($B$1:$B$20=$D$1,$A$1:$A$20,"")))
于 2017-08-15T03:17:16.367 回答