IF函数用于特定的文本string
我试图写一个公式,需要一个字,并在Excel中通过一个IF函数处理它,值是公式中的列表。 我现在的问题是,我有大,X大和1X大文本。 X-Large和1X-Large是唯一的string,需要IF函数才能区分两者。
这是我到目前为止。
=if(or(isnumber(search("Small",af2)),ISNUMBER(SEARCH("Medium",AF2)),ISNUMBER(SEARCH("Large",AF2)),,ISNUMBER(SEARCH("X-Large",AF2))),"Small",or(isnumber(search("1X-Large",af2)),isnumber(search("2X-Large",af2)),isnumber(search("3X-Large",af2)),isnumber(search("4X-Large",af2))),"1X-Large")
我不明白为什么它显示一个错误,只有当它工作时显示小。
所有的帮助表示赞赏
你现在的公式不应该工作,应该给你一个关于有太多争论的错误。 你的function的细分:
=if( or(isnumber(search("Small",af2)),ISNUMBER(SEARCH("Medium",AF2)),ISNUMBER(SEARCH("Large",AF2)),,ISNUMBER(SEARCH("X-Large",AF2))), "Small", or(isnumber(search("1X-Large",af2)),isnumber(search("2X-Large",af2)),isnumber(search("3X-Large",af2)),isnumber(search("4X-Large",af2))), "1X-Large" )
IF
不能使用4个参数。 你最多需要3个。也许你的意思是:
=if( or(isnumber(search("Small",af2)),ISNUMBER(SEARCH("Medium",AF2)),ISNUMBER(SEARCH("Large",AF2)),,ISNUMBER(SEARCH("X-Large",AF2))), "Small", IF( or(isnumber(search("1X-Large",af2)),isnumber(search("2X-Large",af2)),isnumber(search("3X-Large",af2)),isnumber(search("4X-Large",af2))), "1X-Large" ) )
但是这并不能解决你关于X-Large
部分的问题。 为了迎合这一点,您可以检查X-Large
系列是否先存在,然后是否存在。
=IF( OR(ISNUMBER(SEARCH("1X-Large",AF2)),ISNUMBER(SEARCH("2X-Large",AF2)),ISNUMBER(SEARCH("3X-Large",AF2)),ISNUMBER(SEARCH("4X-Large",AF2))), "1X-Large", IF( OR(ISNUMBER(SEARCH("Small",AF2)),ISNUMBER(SEARCH("Medium",AF2)),ISNUMBER(SEARCH("Large",AF2)),ISNUMBER(SEARCH("X-Large",AF2))), "Small" ) )
虽然你可以缩短这个:
=IF( OR(ISNUMBER(SEARCH({"1X-Large","2X-Large","3X-Large","4X-Large"},AF2))), "1X-Large", IF( OR(ISNUMBER(SEARCH({"Small","Medium","Large","X-Large"},AF2))), "Small" ) )
在一行中…
=IF(OR(ISNUMBER(SEARCH({"1X-Large","2X-Large","3X-Large","4X-Large"},AF2))),"1X-Large",IF(OR(ISNUMBER(SEARCH({"Small","Medium","Large","X-Large"},AF2))),"Small"))