Excel(エクセル)関数,グラフ応用そのB IFの使用方法 複数の条件で「含む」を論理式を使用して検出

IFでは複数条件を論理式AND、ORで表したり、IFの中にIF文を入れたりする。
「含む」、「含まない」は例の如く小技必要。

IF関数は知っているようでなかなかしらない。まとめておく。

=IF(C4=1503,1503,"NG")

C4の値が1503という数値であれば、数値の1503を返す、1503出なければ文字列のNGを返す。

C4の値が数値か文字列かで、同じ1503でも違う値になるので注意。

""をつけると文字列になるので注意が必要。

論理式

= ・・・ 等しい
> ・・・ より大きい
< ・・・ より小さい
<=・・・ 以下
>=・・・ 以上
<>・・・等しくない

AND、OR記述方法

=IF(AND(OR(C1<=70,C1>=50),C2="免除"),"合格","不合格")

C1が50以上70以下でC2が免除なら合格、それ以外なら不合格。

IFの中にIFを入れる。条件を満たして、さらに条件を満たす場合に使用。

=IF(B229=7204,H229,IF(ISERROR(MATCH("*AAA商事*",C229,0))=FALSE,F229,1503))

上記の文でB229が7204であれば、H229の値を出力。7203でなければ、次のIFへいく。

含む、含まないの条件を入れ込む。

=IF(B229=7204,H229,IF(ISERROR(MATCH("*AAA商事*",C229,0))=FALSE,F229,1503))

上記太字部分。

IF(C229="*AAA商事*",F229,1503)では検索されない。

IF((MATCH("*AAA商事*",C229,0),F229,1503)だと検索値が無い場合はMATCH関数にエラーが出て#N/Aが出てしまう。

MATCH関数の使用方法はこちらを参照。

それなら、エラーが出た場合は含まないと判断して(ISERROR(***)=trueとして)数値1503を、エラーが出ない場合は含むと判断して(ISERROR(***)=falseとして)F229の値を出力することとする。

これで成功だが、COUNTIFでやる方法が簡単そうだ。

IF 含むで検索するとすぐに検索できるのでこちらを参考にしても良いでしょう。


PS.

VLOOKUP等の検索関数で検索値が無くエラー表示の#N/Aを出さず空白にする方法

IF(ISERROR(MATCH("*AAA商事*",C229,0))=FALSE,MATCH("*AAA商事*",C229,0),"")

これでできました。


忍者Admaxのテキスト広告で収入UP!

実践!ExcelデータベースTOP