IF関数の構文 -複数条件の場合-DL可

前回の記事『【IF関数】使い方と解説 – 単一条件の場合 –』では、

単一条件でのIF関数の使用法を説明しました。

複数条件でIFを使用したいシーンがあります。

前回記事の未拝読の方向けに、前回記事を再掲している個所があります。
なので、前回記事の拝読者は、適宜読み飛ばしていただければと思います。

IF関数は、Microsoft社が発表している「よく使われている関数トップ 10」

にランクインするほどの大人気の関数です。

関数説明
IF 関数この関数を使うと、条件が true または false の場合に、それぞれ別の値を返すことができます。 IF 関数の使い方についてのビデオはここから確認することができます。
機能別Excel関数の種類
Microsoft.“Excel 関数 (機能別)”. Microsoft. 2022-05-31.Excel 関数 (機能別)
https://support.microsoft.com/ja-jp/office/excel-%E9%96%A2%E6%95%B0-%E6%A9%9F%E8%83%BD%E5%88%, (2023-06-14)より一部改変

IF関数は、論理関数の一種でMicrosoft Excel の最初のバージョンから使用できます。

機能別(大分類)機能別(中分類)説明
組み込み関数論理関数IF関数、AND関数、OR関数などの論理関数を扱うことができる
機能別Excel関数の種類
Microsoft.“Excel 関数 (機能別)”. Microsoft. 2022-05-31.Excel 関数 (機能別)
https://support.microsoft.com/ja-jp/office/excel-%E9%96%A2%E6%95%B0-%E6%A9%9F%E8%83%BD%E5%88%, (2023-06-14)より一部改変


ちなみに、類似関数としては、CHOOSE関数、SWITCH関数等があります。
これらは、機会があれば、いずれ取り上げます。

今回は、IF関数の単一条件の使用法を紹介します。
次回は、IF関数の複数条件の使用法を説明します。

問題

「Genre – ゲームのジャンル」が”Sports”であれば”スポーツ”、
「Genre – ゲームのジャンル」が”Puzzle”であれば”パズル”、
「Genre – ゲームのジャンル」が”Simulation”であれば”シミュレーション”、

上記以外であれば「その他」としてください。
という新しい項目を追加してみましょう。

サンプルデータ

オリジナルデータ

今回利用するサンプルデータは、Kaggleで公開されているビデオゲームの売上データ「vgsales.csv」です。

vgsales.csv Video Game Sales

Video Game Sales.”Video Game Sales” .https://www.kaggle.com/datasets/gregorut/videogamesales, (2024/01/16)

以下、データ項目(変数)です。

  • Rank – 全体の売上高ランキング
  • Name – ゲームの名前
  • Platform – ゲームが発売されたプラットフォーム(例:PC、PS4、など)
  • Year – 発売された年
  • Genre – ゲームのジャンル
  • Publisher – ゲームのパブリッシャー
  • NA_Sales – 北米での売上高 (単位: 百万円)
  • EU_Sales – 欧州での売上高(単位:百万ドル)
  • JP_Sales – 日本での売上(単位:百万ドル)
  • Other_Sales – その他の地域での売上高(単位:百万ドル)

解答付きサンプルデータ

解答付きサンプルデータが欲しい方は、下記からダウンロードしてください。

解答

IF関数を使用します。

関数式

次の関数式が解答です。

=IF(E2="Sports","スポーツ",IF(E2="Puzzle","パズル",IF(E2="Simulation","シミュレーション","その他")))

解説

ざっくり解説

IF関数は、

論理式の結果(真または偽)に応じて、指定された値を返します。

関数の構文は以下です。

IF(論理式, 論理式の結果が真の場合, 論理式の結果が偽の場合)

よって、

IF(E列「Genre」がSportsか否か, 論理式の結果が真の場合⇒スポーツ, 論理式の結果が偽の場合⇒スポーツ以外)

となります。

なので、

下記の関数式になるわけです。

=IF(E2="Sports","スポーツ",IF(E2="Puzzle","パズル",IF(E2="Simulation","シミュレーション","その他")))

E2=”Sports”が「E列「Genre」がSportsか否か」を判定しています。

くわしく解説

解説を読む前に、巻末の参考記事もチェックしておくと良いため、時間があれば覗いてみてください。

論理式の結果(真または偽)に応じて、指定された値を返します

[関数の挿入]ダイアログより一部改変

論理式の結果(真または偽)に応じて、指定された値を変更していることが分かります。

そもそも、

IF関数は、IFを訳すと、「もしも」であり、条件を示す関数です。

「もしも、〇〇〇ならば、〇〇。もしも、違うならば、〇〇」といったように、
条件に応じて処理を変更したい場合に使用されます。
(条件分岐とも言います)

したがって、

条件に応じて、処理を変更したいときにIF関数を使用します。

IF関数の構文

IF(論理式,値が真の場合,値が偽の場合)

論理式が真のときは第2引数、論理式が偽のときは第3引数の処理を実施する、

といったように処理を変えています

第1引数

論理式 には結果が真または偽になる値、もしくは、数式を指定します

[関数の挿入]ダイアログより、一部改変


論理式 を記述します。

ここでは、「E2=”Sports”」という論理式を記述します。

E2がSportsであれば、True(真)を返します。

そうでなければ、False(偽)を返します。

第2引数

値が真の場合 には論理式の結果が真であった場合に返される値を指定します。
省略された場合、TRUEが返されます。最大7つまでのIF関数をネストすることができます。

[関数の挿入]ダイアログより


論理式の結果が真の場合の処理を記述します。

ここでは、「”スポーツ”」と記述します。

また、第2引数は省略可能です。その場合はTRUEが返されます。

第3引数

値が偽の場合 には論理式の結果が偽であった場合に返される値を指定します。
省略された場合、FALSEが返されます。

[関数の挿入]ダイアログより


条理式の結果が偽の場合の処理を記述します。

本問題では、論理式の結果が偽の場合に、さらに条件が増えるため、第3引数の設定がポイントになります。
(論理式の結果が真の場合に条件が増える場合は、第2引数の設定を工夫します)

具体的には、第2引数と第3引数に「値(”その他”など)」の代わりに、別のIF式を設定されているイメージです。

結果、IF関数の入れ子構造になりました。

巷でよく言う「ネスト」はこのようなプロセスを経た結果、そう呼ばれているだけです。

最後に、)))の終わり括弧が3つ連続で記述されています。



下記のIF式に対応しているだけです。

第3引数では、「最大7つまでのIF関数をネストすることができます。」の記述がありませんが、IF関数とネストすることは可能です

また、第3引数も省略可能です。その場合はFALSEが返されます。

第3引数は、IFのネストになっているため、

入力し辛い感じですが、

矢印ボタンを押すと、テキストが拡大します。

フォローアップ

ダブルクォーテーション

文字列は、半角のダブルクォーテーション(“)で囲みます。

最後に

前回はIF関数の単一条件でしたが、

今回はIF関数で複数条件を指定する方法を紹介しました。

いかがでしたでしょうか。

入れ子構造、ネストといった言葉を聞いた経験はあったかもしれません。

第2引数の論理式が真のとき、

第3引数の論理式が偽のときの特性を上手に利用しただけに過ぎないことが

分かって頂けたら嬉しいです。

裏を返せば、第2引数と第3引数の起点に、
IF式を要素分解すれば、ネストの解読もそう難しくないことが体感いただけたら幸いです。

ビジネスシーンの多くは条件に応じて、処理を変更する業務ばかりです。

したがって、

使用頻度はかなり高いと思います。

そのため、本記事が皆様のお役に立てれば大変うれしく思います。

ご拝読ありがとうございました。


参考記事

Excel関数を操作するための基本概念です。基本概念を理解すると、各関数の理解がより深まります。

構文に関する記事

Excel関数の引数と戻り値は何だっけ?という時に、役立つ記事です。

ダイアログボックスの使い方に関する記事

Excel関数名は何だっけ?VLOOKUP関数の使い方は何だっけ?という時に、ダイアログボックスを使うと便利です。
下記はそのダイアログボックスに関する記事です。

参照形式に関する記事

関数式をコピーする時はどうしたらいい? $マークは、どう付けたらいいだろう?
といった悩みをお持ちの方は以下をご覧ください。