Googleスプレッドシートの複数条件分岐を覚えよう!IF関数の入れ子とIFS関数

パソコン初心者
ケンジロウ
ケンジロウ

この前のIF関数便利だったよ。
教えてくれてありがとう

社員A
社員A

いえいえ

 

ケンジロウ
ケンジロウ

でも条件が一つで分岐が複数ある場合はどうすればいいのかな?

今回は一定の売上金額を達成した人に1万円、5千円、3千円のインセンティブを与えようと思っているんだけど・・・

 

 

社員A
社員A

なるほど・・・

そういう場合はIF関数を入れ子(ネスト化)にするとできますよ

 

複数条件の時にIF関数を入れ子(ネスト化)にする

今回は下図を使います。

インセンティブ条件をみると結果が4つになりますよね。

まずはIF関数に入れる内容を確認しましょう。

論理式:B2セル(ケンジロウの売上が)>=5000000(5百万円以上の時)
真の場合:F2セル(インセンティブが10000)
偽の場合:「偽の場合A」 「ここがポイント」ここに更にIF関数を追加する。

「偽の場合A」のIF関数
論理式:B2(ケンジロウの売上が)>=4000000(4百万円以上の時)
真の場合:F3セル(インセンティブが5000)
偽の場合:「偽の場合B」

「偽の場合B」のIF関数
論理式:B2(ケンジロウの売上が)>=3000000(3百万円以上の時)
真の場合:F4セル(インセンティブが3000)
偽の場合:F5セル(インセンティブが0)

となります。

「偽の場合」にどんどんIF関数を入れていくことで複数分岐に対応する事ができます。

これを計算式にすると以下になります。

インセンティブ条件のインセンティブが入力されているセルは移動させたくないため絶対参照にしています。

絶対参照は以前にも紹介していますので参照してください。

B2セルへ上記計算式を入れて下のセルへコピーしてみましょう。

社員A
社員A

今回はIF関数を入れ子にすることで4分岐までできるようにしています。どこかに「5000000」「4000000」・・というセルを用意してセル参照にすると計算式が見やすくなりますよね。

社員B
社員B

IFS関数を使うこともできますよ。そちらの方がスッキリした計算式になるのでわかりやすいですよ。

ケンジロウ
ケンジロウ

IFS関数?

IFS関数とは

複数の条件を順に調べた結果に応じて異なる値を返す関数のことです。

構文

=IFS(論理式A,真の場合A,論理式B,真の場合B,論理式C,真の場合C,・・・・)

最後にどの条件も満たさない場合がある時は論理式をTRUEとして「真の場合」を指定しましょう。

先程のIF関数の入れ子で使った例を元にIFS関数に入れる内容を確認しましょう。

論理式A:B2セル(ケンジロウの売上が)>=5000000(5百万円以上の時)
真の場合A:F2セル(インセンティブが10000)

論理式B:B2(ケンジロウの売上が)>=4000000(4百万円以上の時)
真の場合B:F3セル(インセンティブが5000)

論理式C:B2(ケンジロウの売上が)>=3000000(3百万円以上の時)
真の場合C:F4セル(インセンティブが3000)

論理式D:TRUE (上記以外の場合)
真の場合C:F5セル(インセンティブが0)

となります。

入れ子の計算式

IFS関数の計算式

 

社員B
社員B

どちらも結果が同じになりますので好きな方を選んで良いと思いますが、私はこちらの方がわかりやすいのでおすすめです。

ケンジロウ
ケンジロウ

私もIFS関数の方がわかりやすいな。

コメント

タイトルとURLをコピーしました