簡體   English   中英

替代 IFNA 用於我的 INDEX MATCH 公式

[英]Alternate to IFNA for my INDEX MATCH formula

這種級別的公式和編碼還很新,並且正在學習中。 我最近得到了一些幫助,使 INDEX MATCH 公式與 IFNA 語句一起工作。 它現在完美運行(下面的鏈接,“會話 1”表,單元格 E14-E23)

我嘗試在 E29-E38 中使用相同風格的公式(以橙色突出顯示)。 但是,由於需要多個 IF 語句,因此 IFNA 現在不允許它工作。

我需要搜索並將“會話 1”工作表的單元格 D29-38 中的內容與其他不同工作表的 A 列中列出的位置進行匹配(您可以在 E29-E38 中查看代碼中的哪些工作表),然后將我帶回來匹配的 A 列項目的那些工作表的 B 列中的值。

我有我試圖適應的公式如下:

=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,     match($D29,'Vol DD Skill by Skill'!$A$3:$A,0)),    "Skip2"),
     if($B29="EXTVol",    ifna(INDEX('EXTVol DD Skill by Skill'!$B$3:$B,  match($D29,'EXTVol DD Skill by Skill'!$A$3:$A,0)), "Skip3"),
       if($B29="EXTVol2", ifna(INDEX('EXTVol2 DD Skill by Skill'!$B$3:$B, match($D29,'EXTVol2 DD Skill by Skill'!$A$3:$A,0)),"Skip4"),
         if($A29="DMT",   ifna(INDEX('DMT DD Skill by Skill'!$B$3:$B,     match($D29,'DMT DD Skill by Skill'!$A$3:$A,0)),    "Skip5"),
           "Skip6")))))

我只是改組了你在那里的公式,過了一會兒,它似乎奏效了。 您可能需要查看作為其中一部分的IFERRORIFNA語句。 你有NA()我有"Skip x" ,這幫助我弄清楚發生了什么。

如果這不是您要找的,請告訴我。

在此處輸入圖片說明

我可能在這里有誤解,但似乎您在 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”寫這篇文章時的情況一樣)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM