仅当满足条件时才进行TEXTJOIN吗?

use*_*568 6 if-statement google-sheets textjoin

我尝试将TextJoin函数与IF一起使用,但是它似乎不起作用。我认为我已经正确地编写了公式,但是它没有给出我尝试获得的解决方案。

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

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

在此处输入图片说明

Jam*_*s D 6

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

=ArrayFormula(TEXTJOIN(", ",true,if(B1:B6 = D1,A1:A6,"")))  
Run Code Online (Sandbox Code Playgroud)

您还可以使用过滤器功能

=TEXTJOIN(", ",true,FILTER(A1:A6,B1:B6 = D1))
Run Code Online (Sandbox Code Playgroud)


Jer*_*han 4

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

=textjoin(" ,",true,arrayformula(if($B$1:$B$20=$D$1,$A$1:$A$20,"")))
Run Code Online (Sandbox Code Playgroud)