Excelで評価・売上ランク・進捗状況などを判定するとき、IF関数を何重にも重ねて入力していませんか? 条件が多いなら、IFS関数を使うと数式を短く読みやすくできます。私も複数条件の判定式を修正するときは、まずIFS関数で書けるか確認しています。

結論:条件が2つ以上ならIFS関数、条件が少なければIF関数を使います

IFS関数は「条件1, 結果1, 条件2, 結果2…」の順に入力し、最初にTRUEになった条件の結果を返します。例:=IFS(B2>=90,"A",B2>=70,"B",B2>=50,"C",TRUE,"D")

IFS関数は、複数の条件を上から順番にチェックする関数です。最初に条件を満たした時点で判定が終わるため、条件は基本的に厳しい基準・高い数値から順に並べるのがポイントですよ。

一方、IF関数は「ある条件を満たすか、満たさないか」の2択を処理する基本関数です。条件が1つだけならIF関数、評価ランクのように3段階以上へ分岐させるならIFS関数を選ぶと分かりやすいですね。

IFS関数の基本的な使い方

IFS関数の書式は次のとおりです。

=IFS(条件1, 条件1がTRUEの場合の結果, 条件2, 条件2がTRUEの場合の結果, …)

たとえば、B2セルの点数を「A・B・C・D」の4段階で評価する場合は、次の数式を使えます。

=IFS(B2>=90,"A",B2>=70,"B",B2>=50,"C",TRUE,"D")

  • B2が90以上なら「A」を表示します。
  • 90未満でB2が70以上なら「B」を表示します。
  • 70未満でB2が50以上なら「C」を表示します。
  • どの条件にも当てはまらない場合は「D」を表示します。

最後のTRUE,"D"は、いわゆる「それ以外」の指定です。空欄や予想外の値をどう扱うか決めておくと、#N/Aエラーを防ぎやすくなります。

セルにIFS関数を入力する手順

  1. 判定結果を表示したいセルをクリックします。例ではC2セルを選びます。
  2. 数式バー、または選択したセルに「=IFS(」と入力します。
  3. 最初の条件を入力します。点数が90点以上なら「B2>=90」と入力します。
  4. 半角カンマを入力し、結果として「"A"」を入力します。
  5. 同じように「B2>=70,"B"」「B2>=50,"C"」を続けて入力します。
  6. 最後に「TRUE,"D")」を入力し、Enterキーを押します。
  7. C2セル右下の小さな四角にマウスポインターを合わせ、下へドラッグして数式をコピーします。

文字を結果として表示したいときは、Aや完了などの文字を必ず半角のダブルクォーテーションで囲みましょう。数値を返すだけなら、たとえば「100」のようにダブルクォーテーションは不要です。

IFS関数とIF関数の違い

IF関数でも複数条件の判定はできます。ただし、IF関数を重ねるほど、カッコの対応や修正箇所が分かりにくくなります。

同じ評価判定をIF関数で書くと、次のようになります。

=IF(B2>=90,"A",IF(B2>=70,"B",IF(B2>=50,"C","D")))

この数式でも正しく動きますが、条件が増えると閉じカッコが多くなります。IFS関数なら条件と結果を横並びで確認できるので、あとから「B評価を75点以上に変更したい」といった修正もしやすいですよ。

  • IF関数:条件が1つ、または2択の判定に向いています。
  • IFS関数:3段階以上の評価、ランク分け、状態表示に向いています。
  • 共通点:指定した条件に応じて、セルに表示する結果を変えられます。
  • 大きな違い:IFS関数は最初にTRUEになった結果だけを返し、以降の条件は確認しません。

実務で使いやすいIFS関数の例

売上金額をランク分けする

D2セルの売上金額が10万円以上なら「達成」、5万円以上なら「あと少し」、それ以外なら「要確認」と表示する例です。

=IFS(D2>=100000,"達成",D2>=50000,"あと少し",TRUE,"要確認")

期限までの日数で対応状況を表示する

E2セルに期限日が入っている場合、TODAY関数と組み合わせると今日を基準にした表示ができます。

=IFS(E2<TODAY(),"期限切れ",E2=TODAY(),"本日期限",E2<=TODAY()+3,"残り3日以内",TRUE,"余裕あり")

期限切れを最優先で表示したいので、過去の日付を判定する「E2<TODAY()」を先頭に置いています。条件の並び順が結果に直結するため、ここは特に注意しましょう。

IFS関数がうまくいかない場合のチェックポイント

#N/Aと表示される

#N/Aは、指定した条件のどれにも当てはまらないときに出やすいエラーです。最後に「TRUE, 結果」を入れて、「それ以外」の処理を追加しましょう。

  • 例:=IFS(B2>=90,"A",B2>=70,"B",TRUE,"C")
  • 空欄を空欄のままにしたい場合:=IFS(B2="","",B2>=90,"A",TRUE,"B")

結果が想定と違う

条件の順番を確認してください。たとえば「B2>=50」を先に書くと、90点も50点以上と判定されてしまい、AではなくCが返ります。数値の判定では、90点以上、70点以上、50点以上のように、大きい値から小さい値へ並べます。

関数名が認識されない、#NAME?になる

IFS関数はExcel 2019以降、Microsoft 365などで使えます。古いExcelでは利用できないことがあるため、その場合はIF関数をネストして対応しましょう。また、関数名は半角で「IFS」と入力し、区切り記号は通常の日本語版Excelでは半角カンマを使います。

文字列なのにダブルクォーテーションを付けていない

「達成」「未達」「A」などの文字を直接表示する場合は、"達成"のようにダブルクォーテーションで囲みます。ただし、別のセルを参照する場合は「F2」のようにセル番地だけを指定します。

数値が文字列として入力されている

見た目は数字でも、セル左上に緑の三角が出ている場合は文字列の可能性があります。数値比較が期待どおりに動かないときは、対象セルを選択して警告アイコンから「数値に変換」をクリックしてください。先頭にアポストロフィが付いている場合も削除しましょう。

最後に覚えたい時短ワザ:数式の確認とコピーを速くする方法

IFS関数を入力したあとは、数式を素早くコピーできる操作も覚えておくと便利です。

  • F2キー:選択中セルの数式を編集します。マウスで数式バーをクリックする手間を減らせます。
  • Ctrl+Enter:複数セルを選択して数式を入力したあとに押すと、選択したすべてのセルへ同じ数式を一括入力できます。
  • Ctrl+D:選択範囲の一番上のセルにある数式・値を、下方向へコピーします。
  • Ctrl+`:計算結果ではなく数式そのものをシートに表示します。条件やセル参照の確認に便利です。もう一度押すと元に戻ります。

まずは小さな表でIFS関数を試し、条件を上から順に読む習慣を付けましょう。IF関数との使い分けができるようになると、評価表や進捗管理表の修正がぐっと楽になりますよ。

おすすめの記事