我有一张表描述基本的双向关系系统。
为简单起见,我仅以动物为例。
(我的实际电子表格不必要地复杂,并且不会有帮助。)
我列出了具有唯一文本名称(标识符)的动物。
然后在另一列中,在ID列中列出与该动物相关的动物。
最后,我需要一列用于反向计算关系的列。
要完成此操作,我需要搜索整个第二列,并在第2列中生成一个包含特定单词的动物ID列表。
我知道这可能是Excel公式的延伸,但是如果现在暂时不使用PowerQuery或VBA,这将是非常有益的。
(此表不会很大,最多可能有100行。)
答案 0 :(得分:1)
根据我的评论
如果您使用的是Excel 2016或Office 365,则应该可以将TEXTJOIN用作数组公式,就像这样:
=TEXTJOIN(", ",TRUE,IF(ISNUMBER(SEARCH(A2,$B$2:$B$7)),$A$2:$A$7,""))
或者,如果您更喜欢使用表符号(没有“唯一”列标签):
=TEXTJOIN(", ",TRUE,IF(ISNUMBER(SEARCH([@Animal],[Related Animal])),[Animal],""))
将该公式放入单元格C2中(不要忘记使用Ctrl + Shift + Enter确认以使其成为数组公式),然后向下复制。如果您使用的是早期版本的Excel,则需要将结果放在单独的单元格中,否则您将需要VBA。
注意:OP Giffyguy更正了右括号的位置