エクセル・VBA

スプレッドシートでのIFS関数の使い方|複数条件・ANDやORと組み合わせ

スプレッドシートでIFS関数で条件分岐

「売上に応じて評価判定をしたいけど、関数が苦手でどうすればいいのか分からない…」など、Googleスプレッドシートを使っていて、こんな悩みを感じたことはありませんか?

仕事や集計作業で「条件に応じて表示を変えたい」場面はよくありますが、IF関数だけでは複雑になりすぎてしまい、混乱する方も多いはずです。

そんなときにとても便利なのが IFS関数です。

複数の条件をスッキリ書けて、評価やランク分けなども効率的に行えるため、覚えておいて損はない関数です。

そこで今回の記事では、GoogleスプレッドシートでのIFS関数の基本から活用例、応用的な使い方、IF関数との違いまで分かりやすく解説します。

ぜひ参考になさってください。


Excel(エクセル)の操作が苦手な方のために、操作する上でのコツをまとめたページを用意しました。
「パソコン教室パレハのLINE友達登録」(無料)で「パソコンに役立つ豪華15大特典」をお送りしております。
Excel(エクセル)の操作はもちろん、パソコンが苦手な方に役立つ特典を15個ご用意しております。
良かったら下記からご登録ください。

ライン登録プレゼント

無料LINE登録はこちら

スプレッドシートのIFS関数とは?

IFS関数とは

IFS関数は、「もし〇〇だったら●●、もし□□だったら■■、もし△△だったら▲▲…」というように、条件をいくつも並べて判断したいときに使う関数です。

たとえば、テストの点数に応じて「合格」「不合格」「再テスト」と表示させたい場合、IFS関数を使えば一つの関数でまとめて判断することができます。

これまでスプレッドシートで「IF関数」を使っていた方もいるかもしれませんが、IFS関数はIF関数を何個も入れ子にしなくてもいいので、シンプルに書けるというメリットがあります。

IF関数が「もし〇〇だったら●●、そうでなければ△△」というように、結果を2つしか指定できないのに対して、IFS関数の場合は条件も、結果も複数指定できるのが最大の特長です

関数が苦手な方にとっては、「難しそう」と感じるかもしれませんが、考え方をしっかり理解すれば、意外とスッキリ使える関数です。


パソコンが苦手な人向けエクセル講座

パソコンが苦手な方向けエクセル講座の詳細はコチラ

IFS関数の構文

IFS関数の構文は

=IFS(条件1, 値1,条件2, 値2,…)

このようになっています。

引数の解説

各引数の内容はこのようになります。

  • 条件1:まず最初にチェックしたい条件(例:点数が80点以上など)
  • 値1:条件1が「正しい(TRUE)」ときに表示したい内容
  • 条件2:条件1が「正しくなかった場合」に次にチェックする条件
  • 値2:条件2が「正しい」場合に表示する内容

というように、「値2」以は、必要なだけ続けて書くことができます。

★Point★

IFS関数ではすべての条件をチェックしません。
引数に記述した順番に条件に一致するかどうかをチェックし、一致したときにその結果を返します。

例えば、1つ目の条件に一致しなかった場合は2つ目の条件をチェックします。
2つ目の条件に一致した場合は、その結果を返すため、3つ目以降の条件をチェックはしません。

【例】

点数に応じて「優」「良」「可」「不可」と表示したいときのIFS関数

=IFS(A2>=80, "優", A2>=70, "良", A2>=60, "可", A2<60, "不可")

このように、上から順番に条件をチェックして、最初に当てはまったものの結果を表示するのがIFS関数の特徴です。

スプレッドシートでIFS関数を使う場合、IF関数と何が違うの?

スプレッドシートには、条件に応じて表示を変える関数としてよく知られている IF関数 があります。

たとえば「80点以上なら合格、それ未満なら不合格」というような1つの条件を判断するのに便利です。

しかし、評価やランク分けなどで複数の条件を使いたいときは、IF関数を何重にも入れ子にして使う必要があります。

これが非常にややこしく、関数に慣れていない人にとっては読みづらくてミスもしやすくなります。

そんなときに便利なのが IFS関数 です。

IFS関数は、複数の条件を「順番に」チェックして、最初に当てはまったものを表示する関数です。

IF関数のように「入れ子」にしなくても、1つの式で複数条件に対応できるのが大きな特徴です。

たとえば、以下のような評価をしたいとします。

  • 90点以上 → S
  • 80点以上 → A
  • 70点以上 → B
  • それ未満 → 不合格

この場合、IF関数で書くと以下のように複雑になります・・・。

=IF(B2>=90,"S",IF(B2>=80,"A",IF(B2>=70,"B","不合格")))

 

一方、IFS関数で書くとシンプルに次のようにできます。

=IFS(B2>=90,"S", B2>=80,"A", B2>=70,"B", TRUE,"不合格")

 

このように、IFS関数は複数の条件をスマートに処理できるため、評価や分類、表示切り替えなどをわかりやすく整理したい場面でとても便利です。


パソコン苦手な方の為のパソコン通信講座バナー

苦手な方向けパソコン通信講座はコチラ

IFS関数の活用例

それでは、実際に、スプレッドシートでのIFS関数の使い方について解説します。

今回は、

  • 数値を条件とした例
  • パーセントを条件にした例
  • 文字列を条件にした例

で実際の使い方について紹介します。

数値を条件にした例 (売上実績による評価)

たとえば、担当者ごとの売上金額に応じて、以下のように評価を分けたいとします。

IFS関数を使えば、売上金額をもとに自動で評価をつけることができます。

下記の例を見てみましょう。

A列に担当者名、B列に売上金額が入力されています。

ここでIFS関数を使ってC列に売上金額に応じた評価を自動で表示できるようにします。

今回設定する条件は…

  • 売上が100万円以上 →「S」
  • 売上が80万円以上 →「A」
  • 売上が60万円以上 →「B」
  • それ未満 →「D」

このようになります。

スプレッドシートでIFS関数を使う方法

 

C列の評価に、
「=IFS(B2>=1000000,"S", B2>=800000,"A", B2>=600000,"B", B2<600000,"D")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

 

自動入力の候補が表示されるので、チェックマークをクリック、または「Ctrl + Enter」を押すと、下のセルにも自動で数式がコピーされます。

※自動入力機能を使わなかった場合は、セル【C2】を選択して、フィルハンドルを下方向にドラッグするか、フィルハンドルにポインターを合わせてダブルクリックすれば、数式のコピーが可能です。

これで、それぞれの担当者の売上金額に合わせて、評価を表示することができました。

スプレッドシートでIFS関数を使う方法

※今回は、「それ未満(60万円未満)」の条件を「B2<600000」と入力しましたが、「それ以外」の条件の指定は、条件の引数に「TRUE」を指定することで数式の入力を省くことが可能です。

※今回のように、引数「値」に文字列を入力する場合は、必ず文字列をダブルクォーテーションで囲みましょう。

 

パーセントを条件にした例 (達成率によるランク分け)

次は、8店舗分の「目標金額」と「実績金額」から達成率を出し、その達成率に応じてランクを付けます。

下記の例を見てみましょう。

A列に店舗名、B列に目標金額、C列に実績金額、D列に達成率が入力されています。

ここでIFS関数を使ってE列に達成率に応じたランクを自動で表示できるようにします。

今回設定する条件は…

  • 100%以上 →「A」
  • 85%以上 →「B」
  • 70%以上 →「C」
  • 70%未満 →「D」

このようになります。

スプレッドシートでIFS関数を使う方法

 

E列のランクに、
「=IFS(D2>=1,"A", D2>=0.85,"B", D2>=0.7,"C", D2<0.7,"D")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

 

表示された結果を下のセルにもコピーすると、それぞれの達成率に合わせて、自動で結果が表示されます。

スプレッドシートでIFS関数を使う方法

⚠注意⚠

条件にパーセントを指定する場合、数式で入力するのは「100%」や「85%」ではなく「1」や「0.85」といった数値になります。

元々、パーセントは数値を表示形式でパーセントに見せているため、数式内で使用する場合は「数値」で入力しましょう。

文字列を条件にした例 (曜日に応じたスケジュール)

次に、1週間のスケジュールから、曜日に応じたスケジュールをIFS関数を使って表示したいと思います。

下記の例を見てみましょう。

A列に日付、B列に曜日が入力されています。

ここでIFS関数を使ってC列に曜日に応じたスケジュールを自動で表示できるようにします。

今回設定する条件は…

  • 月 →「定休日」
  • 水 →「ランチ休み」
  • 土 →「予約のみ」
  • それ以外 →「通常営業」

このようになります。

スプレッドシートでIFS関数を使う方法

 

C列のスケジュールに、
「=IFS(B2="月","定休日", B2="水","ランチ休み", B2="土","予約のみ", TRUE,"通常営業")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

 

表示された結果を下のセルにもコピーすると、それぞれの曜日に合わせて、自動でスケジュールが表示されます。

スプレッドシートでIFS関数を使う方法

※今回は、「それ以外」の条件の指定で、「TRUE」を指定しています。このように「TRUE」を指定することで、他の条件の入力を省くことができ、数式がスッキリとして見えます。

※今回の例のように、条件の数式で文字列を使用する場合は、文字列をダブルクォーテーションで囲む必要があります。


パソコンが苦手な人向けエクセル講座

パソコンが苦手な方向けエクセル講座の詳細はコチラ

IFS関数 応用の使い方

IFS関数では、「複数の条件を順番にチェックして、当てはまった最初のものを使う」という仕組みになっています。

たとえば「80点以上ならA」「70点以上ならB」というように、条件1、条件2、条件3…と並べて、どれか一つが当てはまればOKという考え方です。

一方で、AND関数やOR関数を組み合わせると、「複数の条件を同時に満たしているかどうか」を1つの条件として判断できます。

AND関数は「指定したすべての条件を満たしたときにTRUE(正しい)」になります。

OR関数は「指定したいずれか1つでも条件が一致した場合にTRUE」になります。

IFS関数と組み合わせることで、「両方のテストに合格している人だけA評価にする」とか、「月曜か木曜なら定休日」など、より柔軟な条件分岐ができるようになります。

それでは実際に、IFS関数とAND関数・OR関数を組み合わせる方法を見てみましょう。

AND関数との組み合わせ

AND関数とは、複数の条件がすべて正しいときにTRUEを返す関数です。

構文は

=AND(条件1, 条件2, ...)

となっており、指定したすべての条件を満たす場合にだけ「TRUE」を返し、それ以外は「FALSE」になります。

AND関数を単体で使用する機会は少なく、IFS関数などと組み合わせて使用することが多いです。

IFS関数とAND関数を組み合わせれば、「ExcelもWordも90点以上ならA」などのように、複数の条件を1つにまとめて評価することができます。

下記の例を見てみましょう。

A列に受験者名、B列にExcelの点数、C列にWordの点数が入力されています。

ここでIFS関数を使ってD列に点数に応じた判定を自動で表示できるようにします。

今回設定する条件は…

  • ExcelもWordも90点以上→「A」
  • ExcelもWordも80点以上→「B」
  • ExcelもWordも70点以上→「C」
  • それ以外→「不合格」

このようになります。

スプレッドシートでIFS関数を使う方法

 

D列の判定に、
「=IFS(AND(B2>=90,C2>=90),"A", AND(B2>=80,C2>=80),"B", AND(B2>=70,C2>=70),"C", TRUE,"不合格")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

 

表示された結果を下のセルにもコピーすると、それぞれの点数に合わせて、自動で判定が表示されます。

スプレッドシートでIFS関数を使う方法

 

OR関数との組み合わせ

OR関数とは、複数の条件のうち、いずれか一つでも正しければTRUEを返す関数です。

構文は

=OR(条件1, 条件2, ...)

となっており、指定した条件のうちいずれか一つでも当てはまればTRUEになります。

OR関数も単体で使用する機会は少なく、IFS関数などと組み合わせて使用することが多いです。

IFS関数とOR関数を組み合わせれば、「月または木なら定休日」「金または土ならランチなし」などのように、いずれかの条件に当てはまる場合の判断が簡単になります。

下記の例を見てみましょう。

A列に日付、B列に曜日が入力されています。

ここでIFS関数を使ってC列に曜日に応じたスケジュールを自動で表示できるようにします。

今回設定する条件は…

  • 月曜日または木曜日→「定休日」
  • 金曜日または土曜日→「ランチなし」
  • それ以外→「通常営業」

このようになります。

スプレッドシートでIFS関数を使う方法

 

C列のスケジュールに、
「=IFS(OR(B2="月",B2="木"),"定休日", OR(B2="金",B2="土"),"ランチなし", TRUE,"通常営業")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

 

表示された結果を下のセルにもコピーすると、それぞれの点数に合わせて、自動で判定が表示されます。

スプレッドシートでIFS関数を使う方法

 

IFS関数とIF関数の使い分けのポイント

「IF関数とIFS関数はどう違うの?」「どうやって使い分けたらいいの?」と思われている方もおられると思います。

IF関数もIFS関数も、「条件によって表示する内容を変えることができる」関数です。

どちらもとても便利な関数ですが、使い方や得意な場面に少し違いがあります。

まず、IF数は「1つの条件」に対して「はい(TRUE)か、いいえ(FALSE)か」を判断する関数です。

表示できる結果は「はい(TRUE)」の場合の結果と、「いいえ(FALSE)」の場合の結果になります。

ただ、IF関数でも複数条件を指定することが可能です、その場合は、IFの中にIFを入れ子(ネスト)することで記述が可能ですが、条件が増えると式が長くなりがちです。

一方、IFS関数は「複数の条件を1つずつ順番にチェックできる」関数です。

書き方もシンプルで、たくさんの条件をわかりやすく並べられるのが特長です。

使い分けのポイントは?

ケースおすすめの関数理由
条件が1つだけIF関数シンプルでわかりやすい
条件が2〜3個程度IFS関数ただしIFでもIFSでも対応可能
条件がたくさんある(3つ以上)IFS関数入れ子にせず書けて見やすい

たとえば、「売上が100万以上ならS、80万以上ならA、60万以上ならB、それ未満ならD」というように、条件が多い評価の場面ではIFS関数がとても便利です。

一方、「セルの値が空欄なら『未入力』、そうでなければそのまま表示する」といった単純な条件では、IF関数の方が短く書けます。

IFS関数はIF関数の役割も果たせる!

中には、関数が苦手でいくつも覚えられない!という方もいるかもしれません。

今回のように「IFS関数」と「IF関数」という似た関数を覚えることが苦手…という場合は、「IFS関数」のみでもOKです。

実は、「IFS関数」が指定できる条件は必ずしも「複数条件」でないといけないわけではありません。

明確に言うと、「1つ以上の条件を指定することが可能」です。(※IF関数の場合は「1つの条件のみ指定可能」です。)

IFS関数は、実はIF関数のような使い方もできます。

IF関数を使って入力する場合

下記の例を見てみましょう。

A列に氏名、B列に点数が入力されています。

ここでIF関数を使ってC列に点数に応じた判定を自動で表示できるようにします。

今回設定する条件は…

  • 80点以上→「合格」
  • それ以外→「不合格」

このようになります。

スプレッドシートでIFS関数を使う方法

 

C列の判定の欄に、
「=IF(B2>=80,"合格","不合格")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

 

表示された結果を下のセルにもコピーすると、それぞれの点数に合わせて、自動で判定が表示されます。

スプレッドシートでIFS関数を使う方法

 

IFS関数を使って入力する場合

下記の例を見てみましょう。

こちらも先ほどの例と同様に、A列に氏名、B列に点数が入力されています。

今回はIFS関数を使ってC列に点数に応じた判定を自動で表示できるようにします。

今回設定する条件は先ほどと同様に…

  • 80点以上→「合格」
  • それ以外→「不合格」

このようになります。

スプレッドシートでIFS関数を使う方法

 

C列の判定の欄に、
「=IFS(B2>=80,"合格", B2<80,"不合格")」
このように入力し、「Enter」キーを押して確定します。

スプレッドシートでIFS関数を使う方法

※2つ目の条件は「B2<80」ではなく「TRUE」を指定することも可能です。

 

表示された結果を下のセルにもコピーすると、それぞれの点数に合わせて、自動で判定が表示されます。

スプレッドシートでIFS関数を使う方法

このように、IFS関数は指定できる条件が1つ以上となっているため、IF関数で出来る条件の入力はIFS関数でも簡単にすることができます。

 

IFS関数を使いこなしてもっと便利に!

IFS関数は、複数の条件に応じて表示する内容を変えたいときにとても便利な関数です。

たとえば「80点以上ならA評価、70点以上ならB評価、それ以外は不合格」といったような段階的な評価を行うときに、複数のIF関数を入れ子にせずに、すっきりと書くことができます。

また、IFS関数は AND関数やOR関数と組み合わせることで、「○○かつ●●」や「△△または▲▲」といった複雑な条件判定にも対応できる柔軟性があります。

「ExcelとWordの両方が90点以上ならAと表示する」「月曜日または木曜日は定休日と表示する」など、複数の条件を組み合わせた使い方も、IFS関数ならスムーズに対応できます。

さらに、IFS関数は IF関数の代わりとしても使える ので、使い方を覚えておくとIF関数だけでは対応しづらいケースでも対応できるようになります。

IFS関数は複数の条件と結果を指定することができる便利な関数ですが、IFS関数は条件を順番にチェックして、最初に当てはまったものを返すという仕組みのため、条件の順序が適切でないと期待と異なる結果になる場合があります。

そのため、条件は大きい順・厳しい順に書くなど、判断基準の順番にも注意しましょう。

Excel(エクセル)が苦手であればパソコン教室で学んでみませんか?

Excel(エクセル)はかなり奥が深く、知識を得ただけは操作が身に付きにくいものです。

そんな時には、弊社のようなパソコン教室を利用するのも一つの手です。

「オンライン」にも対応している「苦手な方専門パソコン教室パレハ」にお任せください。

オンラインというと「動画を見るだけ」とか「オンラインなんてやったことがない」というご不安があるかと思います。

ですが「苦手な方専門のパソコン教室パレハ」の「オンラインレッスン」は、動画ではなく、直接講師に質問できる生レッスンです。

生レッスンでありながらリーズナブルに学べるのが人気の秘密です。

また、苦手な方に特化しているのでパソコンが特に苦手だと言う方には最適です。

パソコンが苦手でも、オンラインできる仕組みがあります。

詳細は下記をご覧ください。

パソコンが苦手な人向けエクセル講座

パソコンが苦手な方向けエクセル講座の詳細はコチラ

Excel(エクセル)の操作が苦手な方のために、操作する上でのコツをまとめたページを用意しました。

「パソコン教室パレハのLINE友達登録」(無料)で「パソコンに役立つ豪華15大特典」をお送りしております。

Excel(エクセル)の操作はもちろん、パソコンが苦手な方に役立つ特典を15個ご用意しております。

良かったら下記からご登録ください。

ライン登録プレゼント

無料LINE登録はこちら

メールの画像

メールはこちら

ラインの画像

LINEはこちら

電話の画像

お電話はこちら