从另一个 sheet 和 return 列的列表中获取数据 headers 从而为我的 collection 中的口袋妖怪生成类型有效性 table

Take data from a range on another sheet and return a list of column headers thus generating a type effectiveness table for Pokemon in my collection

如果有任何错误,我深表歉意,我不是训练有素的程序员,只是一个爱好者。

This is the spreadsheet I am working from.

这是我的角色 sheet,用于一款古老的自制 Pokémon RPG 游戏。肯定是拼凑的。

我在“Collection”选项卡中工作。在“强”、“弱”、“免疫”列中。我想用适当类型的列表自动填充这些单元格。从 bulbapedia 复制“Type Effectiveness”图表功能。

An example:

Type Effectiveness for Woobat, a Flying/Psychic Pokemon

我们的数据集位于通常隐藏的选项卡中 'Misc Data'!A37:R55


所以,我需要做的是获取 F 和 G 列中的类型(忽略“none”)并在数据集中找到它们对应的行('Misc Data'!A37:R55)并将这两行相乘。

然后为该行中的每个单元格添加(连接?)该单元格的列 header(当前是图像,但可以编辑为文本)到列表中,然后显示在单元格中。

我想我需要使用函数连接、查询、vlookup 和/或 clookup 的某种组合,但我花了一个星期的时间来解决这个问题,但我无法将正确的代码组合在一起.

假设您的类型 table 是正确的(但不是)在 L3 中使用:

=INDEX(TEXTJOIN(", ", 1, IF(FILTER('Misc Data'!$B:$R, 
 REGEXMATCH('Misc Data'!$A:$A, JOIN("|", $F3, $G3)))=0.5, 
 TRANSPOSE('Misc Data'!$A:$A), )))

M3:

=INDEX(TEXTJOIN(", ", 1, IF(FILTER('Misc Data'!$B:$R, 
 REGEXMATCH('Misc Data'!$A:$A, JOIN("|", $F3, $G3)))=2, 
 TRANSPOSE('Misc Data'!$A:$A), )))

N3:

=INDEX(TEXTJOIN(", ", 1, IF(FILTER('Misc Data'!$B:$R, 
 REGEXMATCH('Misc Data'!$A:$A, JOIN("|", $F3, $G3)))=0, 
 TRANSPOSE('Misc Data'!$A:$A), )))

并向下拖动


M3 更新:

=INDEX(TEXTJOIN(", ", 1, IF(
 (FILTER('Misc Data'!$B:$R, 
 REGEXMATCH('Misc Data'!$A:$A, JOIN("|", $F3, $G3)))=2)+ 
 (FILTER('Misc Data'!$B:$R, 
 REGEXMATCH('Misc Data'!$A:$A, JOIN("|", $F3, $G3)))=4), 
 TRANSPOSE('Misc Data'!$A:$A), )))