我正在尝试基于多个列进行TEXTJOIN,在这种情况下,列B和D在选定范围内(如果列A = G9而列C = H9),而忽略列D中不在G2范围内的项目:G5(如果D列= G2:G5范围内的项目)。我尝试的一切似乎都导致NA#
答案 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
输入为数组