複数の条件を簡潔に処理する「IFS関数」は、Excelユーザーにとって強力なツールです。
本記事では、複雑な条件分岐を簡単に解決するための「IFS関数」の使い方や活用術について紹介します。
チャット一括管理アプリ「OneChat」が今なら初月無料!!
OneChatのダウンロードはこちらから
Excel IFS関数の魅力を知ろう
Excel IFS関数の基本的な情報について理解していきましょう。
IFS関数の基本概要
IFS関数は、設定した条件に基づいて、条件に当てはまる場合に任意の値を表示させることができる関数です。IFS関数は、複数の条件を一つのIFS関数を用いて設定することができます。
IFS関数の基本的な書式は次の通りです。
=IFS(論理式1, 真の場合1, [論理式2, 真の場合2], …)
※IFS関数の引数(論理式と真の場合)の組み合わせは最大127個まで設定することができます。
項目 | 内容 |
論理式 | 真、または偽であるかを判定する条件を指定します。 |
真の場合 | 引数1(論理式)で指定した値の条件を満たす場合(真である場合)に表示する値を指定します。 |
IF関数との違いと使い分け
IFS関数のように特定の条件を設定し、その条件を満たす場合(真である場合)に任意の値を表示させる関数として「IF関数」が挙げられます。
IF関数とIFS関数の違いや使い分けについてみていきましょう。
関数名 | IFS関数 | IF関数 |
書式 | =IFS(論理式1, 真の場合1, [論理式2, 真の場合2], …) | =IF(論理式, 真の場合, 偽の場合) |
指定可能条件数 | 最大127個 | 1個 |
利用可能バージョン | Microsoft 365、またはExcel 2019以降 | バージョンに制限なし |
Excel IFS関数の対応バージョン
Excel IFS関数は、利用できるExcelのバージョンに制限があります。
IFS関数を利用できるエクセルのバージョンを表にまとめたものが以下のものとなります。
2010 | 2013 | 2016 | 2019 | 2021 | |
買い切り | × | × | × | ○ | ○ |
Microsoft 365(Office 365) | – | – | ○ | ○ | ○ |
IFS関数の簡単な使い方を習得しよう
IFS関数の簡単な使い方について理解していきましょう。
IFS関数の構文と引数
まずは、IFS関数の構文について紹介します。
=IFS(論理式1, 真の場合1, [論理式2, 真の場合2], …)
IFS関数のそれぞれの引数は以下の通りです。
項目 | 内容 |
論理式 | 真、または偽であるかを判定する条件を指定します。 |
真の場合 | 引数1(論理式)で指定した値の条件を満たす場合(真である場合)に表示する値を指定します。 |
IFS関数を使った基本的な例
以下のデータを用いて実際にIFS関数の使い方について理解していきましょう。
行\列 | A | B | C | D |
1 | 日付 | 伝票番号 | 支店コード | 支店名 |
2 | 4月2日 | 001 | 103 | |
3 | 4月5日 | 002 | 102 | |
4 | 4月8日 | 003 | 104 | |
5 | 4月11日 | 004 | 101 | |
6 | 4月15日 | 005 | 102 | |
7 | 4月18日 | 006 | 103 | |
8 | 4月22日 | 007 | 101 | |
9 | 4月25日 | 008 | 104 | |
10 | 4月29日 | 009 | 103 | |
11 | 4月30日 | 010 | 104 |
上記データの「支店コード」をもとに、対応した支店名を「D列」に入力するIFS関数の数式の作成をしてみます。
支店コード | 支店名 |
101 | 大阪支店 |
102 | 札幌支店 |
103 | 名古屋支店 |
104 | 福岡支店 |
まず、「D2」セルに以下のIFS関数の数式を入力しましょう。
=IFS(C2=101, “大阪支店”, C2=102, “札幌支店”,C2=103, “名古屋支店”, C2=104, “福岡支店”)
「C2」セルは「103」なので、対応した「名古屋支店」が表示されます。この数式をオートフィルを用いて「D11」セルまでコピーすることで、各支店コードに対応した支店名を表示させることができます。
行\列 | A | B | C | D |
1 | 日付 | 伝票番号 | 支店コード | 支店名 |
2 | 4月2日 | 001 | 103 | 名古屋支店 |
3 | 4月5日 | 002 | 102 | 札幌支店 |
4 | 4月8日 | 003 | 104 | 福岡支店 |
5 | 4月11日 | 004 | 101 | 大阪支店 |
6 | 4月15日 | 005 | 102 | 札幌支店 |
7 | 4月18日 | 006 | 103 | 名古屋支店 |
8 | 4月22日 | 007 | 101 | 大阪支店 |
9 | 4月25日 | 008 | 104 | 福岡支店 |
10 | 4月29日 | 009 | 103 | 名古屋支店 |
11 | 4月30日 | 010 | 104 | 福岡支店 |
複雑な条件設定にも対応できるIFS関数の活用術
IFS関数は、複数の条件を設定できることが特徴です。それを生かした複雑な条件設定について紹介します。
複数の条件を順番に検証する方法
以下データを用いて、IFS関数により複数の条件を順番に検証する方法について解説します。
行\列 | A | B | C | D | E |
1 | 氏名 | 点数 | 評価 | 評価基準 | |
2 | 佐藤 裕美子 | 83 | 90点以上 | 優 | |
3 | 鈴木 大輝 | 45 | 75点以上90点未満 | 良 | |
4 | 田中 美帆 | 77 | 50点以上75点未満 | 可 | |
5 | 高橋 健太郎 | 31 | 50点未満 | 不可 | |
6 | 伊藤 瞳 | 95 | |||
7 | 渡辺 拓海 | 22 | |||
8 | 山本 美穂 | 68 | |||
9 | 中村 悠太 | 50 | |||
10 | 小林 美咲 | 89 | |||
11 | 加藤 大地 | 74 |
上記データ内に入力されている点数をもとに、IFS関数を用いて対応する値を「評価」に入力します。
1.「C2」セルにIFS関数の数式の1つ目の条件を入力する
IFS関数に1つ目の条件である「点数が90点以上である」と設定します。また、論理式が真の場合に「良」が表示されるように設定します。第二引数の指定をセル参照で行う場合は、オートフィルでコピーした際に参照先がずれないように、絶対参照としましょう。
=IFS(B2>=90, $E$1,
2.残りの条件を同様に入力する
残りの3つの条件も同様に入力します。
=IFS(B2>=90, $E$2, B2>=75, $E$3, B2>=50, $E$4, B2<50, $E$5)
※上記数式の最後の引数である「B2<50」は「TRUE」で代用することができます。
論理式を「TRUE」で指定すると、「それまで入力した条件以外の場合」といった意味となります。
そのため、「それ以外の場合」を指定したい場合は論理式の最後を「TRUE」とし、その次に入力する引数を「どれにも当てはまらない場合(偽の場合)」を指定しましょう。
3.「C2」セル以下にオートフィルを用いてコピーする
入力できた数式を「C2」セル以下にコピーします。
行\列 | A | B | C | D | E |
1 | 氏名 | 点数 | 評価 | 評価基準 | |
2 | 佐藤 裕美子 | 83 | =IFS(B2>=90, $E$2, B2>=75, $E$3, B2>=50, $E$4, B2<50, $E$5) | 90点以上 | 優 |
3 | 鈴木 大輝 | 45 | 75点以上90点未満 | 良 | |
4 | 田中 美帆 | 77 | 50点以上75点未満 | 可 | |
5 | 高橋 健太郎 | 31 | 50点未満 | 不可 | |
6 | 伊藤 瞳 | 95 | |||
7 | 渡辺 拓海 | 22 | |||
8 | 山本 美穂 | 68 | |||
9 | 中村 悠太 | 50 | |||
10 | 小林 美咲 | 89 |
行\列 | A | B | C | D | E |
1 | 氏名 | 点数 | 評価 | 評価基準 | |
2 | 佐藤 裕美子 | 83 | 良 | 90点以上 | 優 |
3 | 鈴木 大輝 | 45 | 不可 | 75点以上90点未満 | 良 |
4 | 田中 美帆 | 77 | 良 | 50点以上75点未満 | 可 |
5 | 高橋 健太郎 | 31 | 不可 | 50点未満 | 不可 |
6 | 伊藤 瞳 | 95 | 優 | ||
7 | 渡辺 拓海 | 22 | 不可 | ||
8 | 山本 美穂 | 68 | 可 | ||
9 | 中村 悠太 | 50 | 可 | ||
10 | 小林 美咲 | 89 | 良 | ||
11 | 加藤 大地 | 74 | 可 |
IFS関数でTRUEやFALSEを表示する方法
IFS関数でTRUEやFALSEの値を返す方法について紹介します。
比較を直接行い「TRUE」または「FALSE」を表示する
例えば、次のような数式の場合、値を直接比較して「TRUE」または「FALSE」を表示することができます。
=IFS(A2>100, TRUE, A2<=100, FALSE)
この例では、「A2」セルの値が100より大きい場合「TRUE」を表示し、その他の場合に「FALSE」が表示されます。
IF関数と組み合わせる
IFS関数とIF関数を組み合わせることで、条件に当てはまる場合に「TRUE」または「FALSE」を表示することができます。
=IFS(IF(C1>10, TRUE, FALSE), TRUE, TRUE, FALSE)
上記数式の場合、「A2」セルの値が100より大きい場合「TRUE」、それ以外の場合に「FALSE」が表示されます。
IFS関数とAND, OR関数の相性抜群な組み合わせ
IFS関数により柔軟な条件の分岐やフィルタリングを設定して処理をさせたい場合は、AND関数やOR関数を組み合わせることにより実現することができます。
AND関数との組み合わせ
行\列 | A | B | C | D |
1 | 担当者名 | 商品Aの売上 | 商品Bの売上 | 評価 |
2 | 三浦 | 1,000,000 | 1,600,000 | |
3 | 高田 | 2,500,000 | 3,400,000 | |
4 | 小林 | 500,000 | 2,200,000 | |
5 | 渡辺 | 900,000 | 1,500,000 | |
6 | 鈴木 | 700,000 | 3,100,000 | |
7 | 佐藤 | 1,900,000 | 2,800,000 |
上記担当者別売上データがあったとして、このデータをもとに以下の条件で評価を入力する関数を、IFS関数とAND関数の組み合わせにより作成してみましょう。
- 「商品Aの売上が120万円以上」かつ「商品Bの売上が250万円以上」である場合は「A評価」
- 「商品Aの売上が80万円以上」かつ「商品Bの売上が150万円以上」である場合は「B評価」
- 「商品Aの売上が50万円以上」かつ「商品Bの売上が120万円以上」である場合は「C評価」
これらの条件をもとにIFS関数とAND関数を組み合わせて「D2」セルに入力する数式は以下のものとなります。
=IFS(AND(B2>=1200000, C2>=2500000), “A”, AND(B2>=800000, C2>=1500000), “B”, AND(B2>=500000, C2>=1200000), “C”)
また、今回は該当する項目はありませんが、上記IFS関数の最後の引数に「TRUE, “D”」を入力することで、条件外のデータに対しても評価を入力することができます。
=IFS(AND(B2>=1200000, C2>=2500000), “A”, AND(B2>=800000, C2>=1500000), “B”, AND(B2>=500000, C2>=1200000), “C”, TRUE, “D”)
行\列 | A | B | C | D |
1 | 担当者名 | 商品Aの売上 | 商品Bの売上 | 評価 |
2 | 三浦 | 1,000,000 | 1,600,000 | B |
3 | 高田 | 2,500,000 | 3,400,000 | A |
4 | 小林 | 500,000 | 2,200,000 | C |
5 | 渡辺 | 900,000 | 1,500,000 | B |
6 | 鈴木 | 700,000 | 3,100,000 | C |
7 | 佐藤 | 1,900,000 | 2,800,000 | A |
OR関数との組み合わせ
行\列 | A | B | C | D |
1 | 担当者名 | 商品Aの売上 | 商品Bの売上 | 評価 |
2 | 三浦 | 1,000,000 | 1,600,000 | |
3 | 高田 | 2,500,000 | 3,400,000 | |
4 | 小林 | 500,000 | 2,200,000 | |
5 | 渡辺 | 900,000 | 1,500,000 | |
6 | 鈴木 | 700,000 | 3,100,000 | |
7 | 佐藤 | 1,900,000 | 2,800,000 |
上記担当者別売上データがあったとして、このデータをもとに以下の条件で評価を入力する関数を、IFS関数とOR関数の組み合わせにより作成してみましょう。
- 「商品Aの売上が150万円以上」または「商品Bの売上が300万円以上」である場合は「A評価」
- 「商品Aの売上が100万円以上」または「商品Bの売上が250万円以上」である場合は「B評価」
- 「商品Aの売上が80万円以上」または「商品Bの売上が200万円以上」である場合は「C評価」
これらの条件をもとにIFS関数とOR関数を組み合わせて「D2」セルに入力する数式は以下のものとなります。
=IFS(OR(B2>=1500000, C2>=3000000), “A”, OR(B2>=1000000, C2>=2500000), “B”, OR(B2>=800000, C2>=2000000), “C”)
また、今回は該当する項目はありませんが、上記IFS関数の最後の引数に「TRUE, “D”」を入力することで、条件外のデータに対しても評価を入力することができます。
=IFS(OR(B2>=1500000, C2>=3000000), “A”, OR(B2>=1000000, C2>=2500000), “B”, OR(B2>=800000, C2>=2000000), “C”, TRUE, “D”)
行\列 | A | B | C | D |
1 | 担当者名 | 商品Aの売上 | 商品Bの売上 | 評価 |
2 | 三浦 | 1,000,000 | 1,600,000 | B |
3 | 高田 | 2,500,000 | 3,400,000 | A |
4 | 小林 | 500,000 | 2,200,000 | C |
5 | 渡辺 | 900,000 | 1,500,000 | C |
6 | 鈴木 | 700,000 | 3,100,000 | A |
7 | 佐藤 | 1,900,000 | 2,800,000 | A |
IFS関数のエラー処理とパフォーマンス向上のコツ
IFS関数を用いたときに発生するエラーの処理方法やパフォーマンスを向上させるコツについて紹介します。
IFS関数でのエラー処理の方法
IFS関数を使っていく中で、エラーの発生を避けることはなかなか難しいでしょう。ですので、IFS関数で発生するよくあるエラーとその処理方法について理解しておくことが大切です。
原因 | 対処法 |
論理式が重複している | 重複している論理式を削除しましょう。 |
論理式が不足している | 適切な論理式を追加しましょう。 |
条件に一致する値がない | 論理式の最後を「TRUE」で指定し、一致する値がない場合に返す値を設定しましょう。 |
参照先のエラー | 参照先のエラーの修正を行いましょう。 |
IFS関数の 計算速度や効率を上げるテクニック
IFS関数の計算速度や効率を上げるテクニックについていくつか紹介します。
不要な論理式を減らす
数式に入力する必要のない不要な論理式を削除することにより、関数の評価回数が減るため、計算速度を向上させることができます。
比較演算子を適切に活用する
条件の指定で比較演算子を適切に活用することで、簡潔に条件の指定をすることができます。
短絡評価を活用する
IFS関数では、論理式で「TRUE」と評価された段階で指定した条件に対応する値を表示し、それ以降の条件を評価しません。そのため、最も高確率な条件を初めの論理式として配置することで、不要な条件の評価が省略されるため、計算速度の向上に繋がります。
よくある質問
IFS関数に関連するよくある質問について紹介します。
IFSとIFの使い分けは?
IFS関数とIF関数の違いについて比較してみましょう。
関数名 | IFS関数 | IF関数 |
書式 | =IFS(論理式1, 真の場合1, [論理式2, 真の場合2], …) | =IF(論理式, 真の場合, 偽の場合) |
指定可能条件数 | 最大127個 | 1個 |
利用可能バージョン | Microsoft 365、またはExcel 2019以降 | バージョンに制限なし |
基本的には、一つの条件に基づいて値を返したい場合はIF関数、複数の条件に基づいて値を返したい場合はIFS関数を用います。
ただし、複数の条件でも複雑なものでない場合や数が少ない場合はIF関数と他の関数を組み合わせることで代用することも可能です。
Excel IFS 何個?
ExcelのIFS関数は、関数内で複数の条件を設定することができる点が特徴です。
IFS関数では、最大127個まで条件を設定することができます。
ただし、複数の条件を設定する場合は、正確な順序で入力することが求められます。また、構築やテスト、更新を行うのが困難である場合もあるため、あまりにも膨大な数の条件を設定することは推奨されていません。
ExcelのIFS関数はいつから使えますか?
ExcelのIFS関数は、利用できるバージョンに制限があります。
IFS関数を利用することのできるバージョンを表にまとめたものが以下のものです。
2010 | 2013 | 2016 | 2019 | 2021 | |
買い切り | × | × | × | ○ | ○ |
Microsoft 365(Office 365) | – | – | ○ | ○ | ○ |
まとめ
IFS関数は、単純な条件だけでなく複数の条件を同時に処理する際に便利な関数です。
条件ごとにこまかく設定が必要となるIF関数と比較して、条件入力をシンプルに行うことができるため可読性も良く、追加で条件を入力しやすいことが魅力です。
本記事を参考に、ぜひIFS関数を活用してみてください。
ExcelIfsに関する重要用語
用語 | 説明 |
比較演算子 | プログラミング言語や数学で用いられる記号やキーワードのことを差し、式や値を比較する際に用いられます。主に「=」「<」「>」の3つを組み合わせて表現されます。 |
オートフィル | データやパターンを一括で自動入力することができる機能です。大量のデータを効率的に入力したり、特定のパターンを迅速に適用したりする際に非常に役立ちます。 |