スプレッドシート IFS関数の使い方|複数条件をスマートに分岐処理

Googleスプレッドシートで「点数が高い人にはA、低い人にはD」など、条件に応じて結果を変えたいこと、ありますよね。

こうした複数条件の分岐処理に使える代表的な関数が IF関数IFS関数 です。

なかでも IFS関数 は、「IFの入れ子構造で迷子になる…」といった悩みをスマートに解決してくれる強力な味方

この記事では、

  • IFS関数の基本構文と使い方
  • IF関数との違いとメリット
  • 実務でよく使う具体例
  • エラー時の対処法

をわかりやすく解説します。

目次

IFS関数とは?

IFS関数は、複数の条件を上から順に判定し、最初にTRUEになった結果を返す関数です。

基本構文

=IFS(条件1, 結果1, 条件2, 結果2, ... )

たとえば

=IFS(A2>=90, "A", A2>=75, "B", A2>=60, "C", A2<60, "D")

この式では、A2の値が90以上なら「A」、75以上なら「B」…と順に評価して、最初に条件を満たした結果が返ってきます

IF関数との違いとIFSのメリット

IF関数だとどうなる?

=IF(A2>=90, "A", IF(A2>=75, "B", IF(A2>=60, "C", "D")))

このように入れ子(ネスト)構造で複数条件を判定するため、式が長くなりやすく、どこがどの条件なのか分かりづらくなります。

IFS関数なら?

=IFS(A2>=90, "A", A2>=75, "B", A2>=60, "C", TRUE, "D")

条件と結果をセットで並べるだけ。シンプルで読みやすく、管理しやすいのが最大の利点です。

特に「条件が4つ以上ある」「後から条件を追加・修正したい」場合に、IFS関数のメンテナンス性の高さが効いてきます。

実務で使えるIFS関数の具体例

例1|テストの点数で評価を分ける

=IFS(B2>=90, "A", B2>=75, "B", B2>=60, "C", TRUE, "D")

※最後に TRUE, "D" を入れておくことで、すべての条件に該当しない場合の「その他」対応もできます。

例2|売上金額でランクを分ける

=IFS(B2>=1000000, "S", B2>=800000, "A", B2>=500000, "B", TRUE, "C")

例3|勤務時間で勤務区分を分類

名前時間区分
石井9フルタイム
木村6パート
青木11超過勤務
=IFS(B2>8, "超過勤務", B2>=7, "フルタイム", TRUE, "パート")

※条件が重なる場合は、上にある条件が優先されます。

よくあるエラーとその対処法

すべての条件がFALSEで「#N/A」が出る

IFS関数では、どの条件もTRUEにならないと#N/Aエラーになります!

【対策】
最後に TRUE, "その他" を追加しておくのがベストです。

順序ミスで期待通りの結果が出ない

IFS関数は上から順に評価され、最初にTRUEになったものが返るため、条件の順番を間違えると意図と異なる結果になることがあります。

【対策】
範囲の広い条件(例:>=60など)は下の方に書くようにしましょう。

まとめ|IFS関数で複雑な条件もすっきり整理

  • IFS関数は複数条件の処理をスマートに記述できる
  • IF関数より読みやすく、ミスが少ない
  • 実務では、評価・ランク・勤務区分などの分類に活躍
  • TRUE を最後に書けば「その他」にも対応できる

複雑なIFの入れ子構造で悩んでいた方は、ぜひIFS関数を試してみてください。
数式が驚くほどすっきりして、メンテナンスも楽になりますよ!

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

1994年生まれ。福岡出身、福岡育ち、福岡在住。
エンジニアを数年経験し、現在は事業会社でデータ分析業務に従事しています。
好きな物:猫、ラーメン
取得資格:基本情報技術者、G検定、統計検定2級

目次