我的INDEX MATCH公式的替代IFNA

问题描述

这个级别的公式和编码还很新,可以随时随地学习。我最近得到了一些帮助,以使INDEX MATCH公式与IFNA语句一起使用。现在,它可以完美运行(下面的链接,“会话1”工作表,单元格E14-E23)

我尝试在E29-E38中使用相同样式的公式(以橙色突出显示)。但是,由于需要多个IF语句,因此IFNA不允许它现在工作。

我需要搜索“会话1”工作表的单元格D29-38中的内容并将其与其他工作表的A列中列出的位置进行匹配(您可以在E29-E38中的代码中看到哪些工作表),然后将我的工作表B列中的值带回给匹配的A列项目。

下面有我尝试调整的公式:

= iferror(ifna(IF($ B29 =“ Set”,INDEX('按技能设置DD技能'!$ B $ 3:$ B,match($ D29,'按技能设置DD技能'!$ A $ 3 :$ A,0)),na()),if($ B29 =“ Vol”,INDEX('Vol DD Skill by Skill'!$ B $ 3:$ B,match($ D29,'Vol DD Skill by Skill '!$ A $ 3:$ A,0)),na()),if($ B29 =“ EXTVol”,INDEX('EXTVol DD Skill by Skill'!$ B $ 3:$ B,match($ D29,' EXTVol DD Skill by Skill'!$ A $ 3:$ A,0)),na()),if($ B29 =“ EXTVol2”,INDEX('EXTVol2 DD Skill by Skill'!$ B $ 3:$ B,match ($ D29,'EXTVol2 DD Skill by Skill'!$ A $ 3:$ A,0)),na()),if($ A29 =“ DMT”,INDEX('DMT DD Skill by Skill'!$ B $ 3 :$ B,match($ D29,'DMT DD Skill by Skill'!$ A $ 3:$ A,0)),“”)),“”)

还有指向工作表副本的链接以供参考:

https://docs.google.com/spreadsheets/d/1pkN3tKTFhFweDdKfQ3SZDnA_gqqF-B5rso1zc1v3TZY/edit?usp=sharing

在此先感谢能够帮助您的人!

艾略特

解决方法

我可能有一个适合您的答案。 在E29中尝试以下公式,然后将其向下拖动:

=IF($B29="Set",ifna(INDEX('Set DD Skill by Skill'!$B$3:$B,match($D29,'Set DD Skill by Skill'!$A$3:$A,0)),"Skip1"),if($B29="Vol",ifna(INDEX('Vol DD Skill by Skill'!$B$3:$B,'Vol DD Skill by Skill'!$A$3:$A,"Skip2"),if($B29="EXTVol",ifna(INDEX('EXTVol DD Skill by Skill'!$B$3:$B,'EXTVol DD Skill by Skill'!$A$3:$A,"Skip3"),if($B29="EXTVol2",ifna(INDEX('EXTVol2 DD Skill by Skill'!$B$3:$B,'EXTVol2 DD Skill by Skill'!$A$3:$A,"Skip4"),if($A29="DMT",ifna(INDEX('DMT DD Skill by Skill'!$B$3:$B,'DMT DD Skill by Skill'!$A$3:$A,"Skip5"),"Skip6")))))

我只是重新整理了您那里的公式,过了一会儿,它似乎就解决了。您可能需要查看其中要使用的IFERRORIFNA语句。您在NA()的地方有"Skip x",这有助于我弄清正在发生什么。

让我知道这是否不是您想要的东西。

enter image description here

,

在这里我可能会误解,但看来您在B29:B38中的输入可用于创建所有要引用的图纸名称。因此,如果您将以下内容放在E29中并将其拖到D38中,它将提供您想要的内容:

=IF(A29="","",IFERROR(VLOOKUP(D29,INDIRECT("'"&B29&" DD Skill by Skill'!A3:B"),2,FALSE),"No "&B29&" Sheet"))

您会注意到,我的IFERROR设置为告诉您B29:B38中命名的图纸序言是否不存在(就像我在第33行:“ Pass2”中编写此书时的情况一样)