Excel 具有多个 IF 条件的 TEXTJOIN

Excel TEXTJOIN with multiple IF conditions

我正在尝试使用 TEXTJOIN 函数创建每行 D 列值内容的逗号分隔列表,但仅当 J 列值读取 "Regulatory" 且 K 列值读取 "No"。

我可以在一个条件下(即仅依赖于 J 或 K 列)执行此操作,但不能同时满足两个条件(J 和 K)。我使用的公式是:

=TEXTJOIN(",",TRUE,IF('Variable Database'!$J:$J2="Regulatory"*('Variable Database'!$K:$K2="No"),'Variable Database'!$D:$D2,"")) 

这是一个有效的公式,但只是 returns“#VALUE”。您对我如何实现这一点有什么想法吗?

无法自己测试(不幸的是我没有TEXTJOIN()

但是最近我回答了一个相当相似的问题

所以请尝试:

{=TEXTJOIN(",",TRUE,IF('Variable Database'!$J:$J2="Regulatory", IF('Variable Database'!$K:$K2="No",'Variable Database'!$D:$D2,""),""))}

注意是通过CtrlShiftEnter

输入的数组公式

@TomSharpe 针对@JvdV 的评论提出的建议已解决该问题。他的建议是:

我的 2010 Excel 有一个 Textjoin 的附加版本,但它不能与数组一起正常工作,所以我也无法正确测试它!但是你的答案看起来是正确的。原始公式应该有额外的括号 =TEXTJOIN(",",TRUE,IF(('Variable Database'!$J$3:$J$762="Regulatory")*('Variable Database'!$K$3 :$K$762="No"),'Variable Database'!$D$3:$D$762,""))