IF関数の条件式が書けない人へ|手が止まらなくなる「7つの型」(AND・OR・IFSまで)

IF関数の条件式パターン7選のバナー Excel

「IF関数、名前は知ってるんです。使ったこともあります。でも、かっこの中の条件式で、いつも手が止まってしまって」

教室で、よくいただく声です。

IF関数そのものは「もし〜なら」という、とてもシンプルな関数です。つまずくのは決まって、かっこの中の条件式(論理式)のところ。

「以上って、記号はどっちの向きだっけ?」
「文字のときは、どう書くんだろう?」
「条件が2つあるときは……?」

そこで今回は、条件式の書き方を よく使う7つの型 に整理しました。

先にお伝えしておくと、全部を覚える必要はありません。「これ、自分の表で使えそうだな」というものを、1つだけ持ち帰ってください。1つ書けるようになると、残りは必要になったとき、必ず思い出せます。

※動画で手を動かしながら見たい方は、記事末尾にYouTube版を置いています。

型①:基本の型は「日本語」で読む

IF関数はこう書きます。

=IF(条件, 条件に合うとき, 合わないとき)

記号の式だと思うと難しく見えますが、これは日本語の文章です。

「もし70点以上だったら合格、そうでなければ不合格」——これをそのまま式にすると、こうなります。

=IF(B3>=70, "合格", "不合格")

読み方は「もしB3が70以上だったら合格、違うなら不合格」。カンマが「〜なら」と「そうでなければ」の区切りです。日本語で言えれば、式は書けます。

型②:数値を比べる「5つの記号」

型①で出てきた >=。比較の記号は、この5つだけ覚えれば十分です。

記号 意味
>= 以上(その数を含む)
<= 以下(その数を含む)
> 〜より大きい(その数を含まない)
< 〜より小さい(その数を含まない)
<> 〜ではない(ノットイコール)

※動画に「=は入らないんですか?」とコメントをいただきました。=も比較記号です。ここでは大小を比べるものに絞って5つにまとめました。
数値にもそのまま使えて、=IF(B3=70, “ちょうど70”, “それ以外”) と書けます。

覚え方はシンプルで、以上・以下はイコールがつく。70以上は70を含むから >=70、70より大きいは70を含まないから >70 です。

ここで1つだけ注意。イコールは必ず後ろです。>= はOKですが、=> と書くとエラーになります。「大なりイコール」と読んだとおりの順番、と覚えてください。

たとえば >=70>70 に変えると、ちょうど70点だった人は「不合格」になります(70を含まないため)。この1文字の差が、結果を分けます。

型③:文字と比べるときは「”” で囲む」

数値の次は、文字との比較です。「B3が『済』だったら丸をつけたい」——こう書きます。

=IF(B3="済", "丸", "")

ここが、初心者の方がいちばん引っかかるポイント。文字は ダブルクォーテーション(””)で囲む というルールがあります。

もし囲まずに =IF(B3=済, …) と書くと、#NAME? エラーが出ます。「そんな名前はありませんよ」という意味です。

なぜ囲むのか。ざっくり言えば、文字なのか、それ以外(セルにつけた名前など)なのかを区別するためのかっこ、とイメージしてください。数値はそのまま、文字だけ "" で囲む、と覚えれば大丈夫です。

型④:空白かどうかは「”” を2つ重ねる」

文字つながりで、実務でよく使うのが「未入力チェック」です。まだ入力されていないセルに、印をつけたいとき。

=IF(B3="", "未入力", "")

""(ダブルクォーテーションを2つ重ねる)で、「何もない=空っぽ」という意味になります。「B3が空っぽだったら未入力、それ以外は何も表示しない」ですね。表の見た目を整えるときの定番です。

逆に「入力されていたら」としたいときは、型②の <>(〜ではない)を使います。

=IF(B3<>"", "入力済み", "")

「空っぽ、ではない」=「何か入っている」という読み方です。

型⑤:両方を満たすなら「AND」

ここから、条件が2つ以上になります。「BさんもCさんも、両方70点以上なら合格」。日本語でいう「かつ」です。

=IF(AND(B3>=70, C3>=70), "合格", "不合格")

AND( ) の中に、条件をカンマで並べるだけ。「B3が70以上 かつ C3が70以上なら合格、それ以外は不合格」。両方をクリアしていないと合格になりません。条件は2つでも3つでも、いくつでも並べられます。

型⑥:どちらかを満たすなら「OR」

ANDとセットで覚えたいのが「OR」。日本語でいう「または」です。「支払いが現金か振り込みなら手数料なし、それ以外は手数料あり」。

=IF(OR(B3="現金", B3="振り込み"), "手数料なし", "手数料あり")

書き方はANDと同じで、OR( ) の中に条件をカンマで並べます。違いは判定のしかた。ORはどれか1つ当てはまればOK、ANDは全部そろって初めてOKです。

迷ったら、日本語で言ってみてください。「かつ」ならAND、「または」ならOR。口から出てきた言葉で選べます。

型⑦:3つ以上に分けるなら「IFS」

最後は、答えを3つ以上に分けたいとき。「購入金額でゴールド・シルバー・ブロンズの3つに分ける」ようなケースです。

以前は、IFの中にIFを入れる「入れ子(ネスト)」で書いていました。

=IF(B3>=30000, "ゴールド", IF(B3>=10000, "シルバー", "ブロンズ"))

これくらいなら読めますが、条件が増えて3段・4段になると、書いた本人でも分からなくなります。

そこで登場するのが IFS関数 です。

=IFS(B3>=30000, "ゴールド", B3>=10000, "シルバー", TRUE, "ブロンズ")

「条件・答え、条件・答え……」と、フラットに並べて書けます。入れ子がない分、ぐっと読みやすい。ポイントは2つ。

  • 上から順に判定されるので、金額の大きい順に書く
  • 最後の「どれにも当てはまらないもの」の条件には TRUE と書く(=「残り全部」の意味)

なお、IFS関数が使えるのは Excel 2019以降です。それより前(2016など)をお使いの方は、型⑦の入れ子で書いてください。

おまけ:じつは「IFを使わない」条件計算もできる

ここまでが7つの型ですが、最後に1つだけ、仕組みの話を。

Excelでは、B3="○" のような条件式は TRUE(正しい)か FALSE(違う) を返します。そして計算式の中では、TRUEは「1」、FALSEは「0」として扱われます。

この性質を使うと、たとえば資格手当の計算が、IFなしで書けます。

=(B3="○")*5000 + (C3="○")*3000 + (D3="○")*2000

B3="○" がTRUEなら 1×5000=5000、違えば 0×5000=0。IFを重ねなくても、当てはまった分だけが足されていきます。

じつは今日ずっと書いてきた条件式は、すべてこの「TRUE=1/FALSE=0」の仕組みの上に載っています。 ここが分かると、IF関数の見え方も少し変わってきますよ。

まとめ:まずは「1つだけ」試してみてください

IF関数の条件式、7つの型をおさらいします。

  1. 基本の型は日本語で読む(もし〜なら○○、違うなら○○)
  2. 数値の比較は5つの記号(以上・以下はイコールがつく)
  3. 文字は "" で囲む
  4. 空白は "" を重ねる(何もない、の意味)
  5. 両方なら AND(○○かつ○○)
  6. どちらかなら OR(○○または○○)
  7. 3つ以上に分けるなら IFS(入れ子はもう不要)

繰り返しになりますが、全部を覚える必要はありません。自分の表で使えそうなものを、まず1つだけ試してみてください。 1つ使えれば、残りは必要になったとき、必ず思い出せます。

動画でも解説しています

手を動かしながら見たい方は、YouTube版でどうぞ(数式を実際に入力しながら解説しています)。

IF関数の条件式パターン7選|複数条件・AND/OR・IFSまで(YouTube)

「自分の表でこうしたいのに、うまくいかない」——そんなExcelの「あと一歩」は、教室でも個別にご相談いただけます。お気軽にどうぞ。