web-dev-qa-db-ja.com

IF-ELSE IF-ExcelのELSE構造

要件:

セルA1の文字列に文字列の一部として「abc」が含まれている場合

次に、値「Green」を割り当てます

それ以外の場合、セルA1の文字列に文字列の一部として「xyz」が含まれている場合

次に、値「黄色」を割り当てます

Else

値「赤」を割り当てます

私はこれを試しました:

=IF(FIND("~",SUBSTITUTE(A1,"abc","~",1))<>"#VALUE!", "Green", IF(FIND("~",SUBSTITUTE(A1,"xyz","~",1))<>"#VALUE!", "Yellow", "Red"))

最初のIFがTrueの場合に機能し、他の場合は#VALUE!出力として。

何が悪いのかわかりません。

20
RazrBoy

FINDが_#VALUE!_を返す場合、それは文字列ではなくエラーであるため、FIND(...)と_"#VALUE!"_を比較することはできません。FINDISERRORでエラーを返します。また、FINDは複数の文字で機能します。

したがって、式の簡略化された動作バージョンは次のようになります。

_=IF(ISERROR(FIND("abc",A1))=FALSE, "Green", IF(ISERROR(FIND("xyz",A1))=FALSE, "Yellow", "Red"))
_

または、二重否定を削除するには:

_=IF(ISERROR(FIND("abc",A1)), IF(ISERROR(FIND("xyz",A1)), "Red", "Yellow"),"Green")
_
34
assylias
_=IF(CR<=10, "RED", if(CR<50, "YELLOW", if(CR<101, "GREEN")))
_

CR = ColRow (Cell)これは一例です。この例では、Cellの値が10以下の場合、そのセルにRED Wordが表示されます。同様に、他のif条件がtrueの場合、if ifがfalseです。

7