基于多列和多个IF条件的TEXTJOIN

时间:2019-05-22 03:10:47

标签: excel excel-formula

我正在尝试基于多个列进行TEXTJOIN,在这种情况下,列B和D在选定范围内(如果列A = G9而列C = H9),而忽略列D中不在G2范围内的项目:G5(如果D列= G2:G5范围内的项目)。我尝试的一切似乎都导致NA#

enter image description here

1 个答案:

答案 0 :(得分:0)

这项工作吗?

=TEXTJOIN(" | ",TRUE,IF(A2:A17=G9,IF(C2:C17=H9,IF(D2:D17=TRANSPOSE(G2:G5),E2:E17,""))))

通过 Ctrl Shift Enter

确认

不幸的是,我没有textjoin,也无法自我测试。

为了详细说明,我相信您需要TRANSPOSE()函数。现在,您正在将垂直范围与垂直范围进行比较。由于要比较的数组大小不同,可能会导致问题N/A#错误。我自己对此行为感到困惑,并在here上对此问题提出了疑问。给出的答案对于阐述此Excel行为非常有用。

希望这可以解决您的问题:)


编辑

我希望我可以和TEXTJOIN()一起为您提供帮助,但是要获得一个临时补丁,直到有人可以进一步帮助您,您可以尝试实现一些SUBSTITUTE()函数来捕获{{ 1}}的值如下:

FALSE

输入为数组