RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

Excel(エクセル) IF関数 使い方【まとめ】

f:id:yayawowo:20210421153728p:plain

はじめに

技術広報のyayawowoです。
皆さんは、業務中にExcel(エクセル)を利用される機会が多いのではないでしょうか。
Excel(エクセル)には便利な関数がとても多くあります。 今回は、Excel初心者向けにビジネスシーンで多く利用されているExcel(エクセル)の中でも、IF関数に特化し、使い方をまとめました。
基本的な使い方となりますので、Excel(エクセル)初心者の方だけでなく、復習をしたい方のご参考になれば幸いです。

Excel(エクセル)のIF関数とは

まず初めに、Excel(エクセル)のIF関数とはどのようなことができるでしょうか。
簡単にいいますと…

  • IF関数とは
    • 「設定した条件によって、指定された値を返す関数」のこと

Excel(エクセル)のIF関数について、数式を利用した簡単な解説は以下のようになります。

= IF(
① ●●が▲▲だったら【条件】 ,
② 設定した値を表示【条件一致】,
③ 設定した値を表示【条件不一致】 )

①:条件を指定する
②:条件に一致する場合、表示したい値を指定
③:条件に一致しない場合、表示したい値を指定

では、イメージがついたところでIF関数の使い方に入っていきます。
まずは、入門編からです。

Excel(エクセル)のIF関数 - 使い方(入門編)-

入場料の計算を例題にしていきたいと思います。

例題

入場料が以下条件の動物園があります。

  • 20歳未満の入場料:1,000円
  • 20歳以上の入場料:2,000円

ある旅行会社では、動物園の入場料をまとめるために名簿を作成しました。
各々の入場料がいくらになるかExcel(エクセル)のIF関数を活用して算出してみましょう!

IF関数の答え

赤枠箇所の条件を、 以下の通りにすれば良いことがわかります。

= IF(
① 年齢が20歳以上だったら【条件】 ,
② 2,000円を表示【条件一致】,
③ 1,000円を表示【条件不一致】 )

この式を使って、Excel(エクセル)のIF関数の使い方を解説します。

実践

1. 設定した条件に合わせて、Excel(エクセル)で表を作成します。
IF関数の作成

2.、Excel(エクセル)で 作成した表のセルに式を入力します。 Excel(エクセル)IF関数 入力

  • D6=IF(と入力
  • Excel(エクセル)が自動で候補の関数を
  • =IF(論理式,[真の場合],[偽の場合])に式を入力
    IF関数の条件式
    • 論理式・・・【条件】
      • 年齢が20歳以上だったら:C6>=20
        • 年齢:C6
        • 20歳以上:>=20
    • 真の場合・・・【条件一致】
      • 2,000円を表示:$C$3
        • 2,000円を手入力しても良いが、汎用的に利用したいためC3を指定する
        • オートフィルでコピーをした際、セルがずれないように絶対参照$で固定する
    • 偽の場合・・【条件不一致】
      • 1,000円を表示:$C$2
        • 1,000円を手入力しても良いが、汎用的に利用したいためC2を指定する
        • オートフィルでコピーをした際、セルがずれないように絶対参照$で固定する

◆式:=IF(C6>=20,$C$3,$C$2)が完成◆

3. オートフィル 1 で式をコピーします。
D6に入力した式をD7D8にもコピーしたいですよね。
そのようなときにオートフィルを利用します。 IF関数のオートフィル

  • D6セルの右下にカーソルをあてる
  • 十字(+)のようなマークがでましたら、クリックしたまま下に引っ張る
  • D7D8に式がコピーされ、条件通りの値が表示される IF関数のオートフィル答え

20歳以上であるラクス花子さんと花見ラク子さんの入場料が「2,000円」であることがわかります。
Excel(エクセル)のIF関数は覚えてしまえばとても便利な機能です。
様々な場面で活用できるよう、この機会にしっかりと覚えてしまうことをお勧めします。

IF関数と論理式

Excel(エクセル)のIF関数で入力する論理式ですが、

「どのような式にすればいいの?」
「この条件の時、記号は何を使えば・・・」

と、迷われる方もいるかと思います。
以下の通り、少し簡単にまとめましたので、ご参考いただけますと幸いです。

条件
C6>20 C6データ(年齢)が20歳より大きい
C6>=20 C6データ(年齢)が20歳以上
C6<20 C6データ(年齢)が20歳より小さい(未満)
C6<=20 C6データ(年齢)が20歳以下
C6=20 C6データ(年齢)が20歳と等しい(同じ)
C6<>20 C6データが20歳と等しくない(異なる)

Excel(エクセル)のIF関数 - 使い方(応用編)-

Excel(エクセル)のIF関数は、複数の条件を組み合わせて利用することも可能です。
ここからは応用的な使い方について解説をしていきたいと思います。

IF関数と複数条件

応用編では、入門編で扱った例題を再度利用します。

例題

以下の通り入場料の条件を変更しました。
入門編では、「20歳以上」という1つの条件で事足りましたが、そこに以下のような「20歳以上40歳未満」と「40歳以上」の条件が加わった場合はどのようにIF関数の式を作成すれば良いでしょうか。

  • 20歳以上の入場料:1,000円
  • 20歳以上40歳未満の入場料:2,000円
  • 40歳以上の入場料:1,500円

では、複数条件を使ったExcel(エクセル)のIF関数について説明していきます。

実践

1. Excel(エクセル)で作成した表のセルに式を入力します。 IF関数の複数条件入力

  • =IF(論理式,[真の場合],[偽の場合])の通り、式を埋めていく
    • 論理式・・・【条件】
      • 20歳未満だったら:C7<20
    • 真の場合・・・【条件一致】
      • 1,000円を表示:$C$
    • 偽の場合・・【条件不一致】
      • 次の条件:IF関数を追加・・・(IF(論理式,[真の場合],[偽の場合]))
      • 論理式・・・【条件】
        • 40歳以上だったら:C7>=40
      • 真の場合・・・【条件一致】
        • 1,500円を表示:$C$4
      • 偽の場合・・【条件不一致】
        • 2,000円を表示:$C$3

◆式:=IF(C7<20,$C$2,IF(C7>=40,$C$4,$C$3))が完成◆

2. オートフィルで式をコピーします。
D7の式をオートフィルを利用してD8~D10にコピーします。 IF関数の複数条件コピー

  • D7セルの右下にカーソルをあてる
  • 十字(+)のようなマークがでましたら、クリックしたまま下に引っ張る
  • D8D9D10に式がコピーされ、条件通りの値が表示される IF関数の複数条件結果

45歳である楽楽次郎さんの入場料が1,500円であることがわかります。
また、25歳のラクス花子さんと20歳の花見ラク子さんの入場料は2,000円と正しく算出できています。
このように、条件が複数となった場合でも、Excel(エクセル)のIF関数を利用して簡単に計算することができますね!

Excel(エクセル)のIF関数とAND関数・OR関数

Excel(エクセル)のIF関数ではさらに、より複雑な処理ができます。
次はIF関数と「AND関数(かつ)」と「OR関数(または)」の使い方について説明します。

IF関数とAND関数

例題

以下条件の試験を例題にAND関数の使い方を説明します。

  • 80歳以上:合格
  • 80歳未満:不合格

実践

1. Excel(エクセル)で作成した表のセルに式を入力します。 IF関数のAND関数入力

  • =IF(論理式,[真の場合],[偽の場合])の通り、式を埋めていく
    • 論理式・・・【条件】
      • 午前試験が80点以上かつ、午後試験が80点以上だったら:(C6>=80,D6>=80)
    • 真の場合・・・【条件一致】
      • 合格を表示:$C$2
    • 偽の場合・・【条件不一致】
      • 不合格を表示:$C$3

◆式:`IF(AND(C6>=80,D6>=80),$C$2,$C$3)が完成◆

2. オートフィルで式をコピーします。
E6の式をオートフィルを利用してE7~E9にコピーします。 IF関数のAND関数コピー

  • E6セルの右下にカーソルをあてる
  • 十字(+)のようなマークがでましたら、クリックしたまま下に引っ張る
  • E7E8E9に式がコピーされ、条件通りの値が表示される IF関数のAND関数表示

今回用意した例題は、「午前試験が80点以上かつ(AND)、午後試験が80点以上」の人だけが合格となります。
表から読み解く通り、合格者はラクス太郎さんだけであることがわかります。
合否判定も正しくされていますね。

IF関数とOR関数

例題

次は、以下条件の試験を例題に、OR関数の使い方を説明します。

  • 80歳以上:合格
  • 80歳未満:不合格

実践

1. Excel(エクセル)で作成した表のセルに式を入力します。 IF関数のOR関数入力

  • =IF(論理式,[真の場合],[偽の場合])の通り、式を埋めていく
    • 論理式・・・【条件】
      • 午前試験が80点以上または、午後試験が80点以上だったら:OR(C6>=80,D6,>=80)
    • 真の場合・・・【条件一致】
      • 合格を表示:$C$2
    • 偽の場合・・【条件不一致】
      • そうでなければ、不合格を表示:$C$3

◆式:=IF(OR(C6>=80,D6>=80),$C$2,$C$3)が完成◆

2. オートフィルで式をコピーします。
E6の式をオートフィルを利用してE7~E9にコピーします。 f:id:yayawowo:20210420163935p:plain

  • E6セルの右下にカーソルをあてる
  • 十字(+)のようなマークがでましたら、クリックしたまま下に引っ張る
  • E7E8E9に式がコピーされ、条件通りの値が表示される IF関数のOR関数表示

OR関数の例題は、「午前試験が80点以上または、午後試験が80点以上」の人だけが合格となります。
午前・午後試験の両方とも80点以上がないのは楽楽次郎さんだけですので、IF関数の式が間違っていないことが確認できました。

IF関数と空白(空欄)

例題

例題としてあげていた合否判定ですが、もし合格の人だけを知りたい試験があったとします。
受験者が少ない試験でしたら、今まで通り合格・不合格の表示をしても良いと思うのですが、人数が多い場合はどうでしょうか。
以下のように表示してしまうと少し見にくくなりますよね。
IF関数の空白結果

Excel(エクセル)のIF関数では、空白(空欄)を指定することもできますので、次はその説明をしたいと思います。

実践

1. Excel(エクセル)で作成した表のセルに式を入力します。 IF関数の空白入力

  • =IF(論理式,[真の場合],[偽の場合])の通り、式を埋めていく
    • 論理式・・・【条件】
      • 点数が80点以上だったら:C6>=80
    • 真の場合・・・【条件一致】
      • 合格を表示:$C$2
    • 偽の場合・・【条件不一致】
      • 空白(空欄)を表示:""

◆式:=IF(C6>=80,$C$2,"")が完成◆

2. オートフィルで式をコピーします。
D6の式をオートフィルを利用してD7~D16にコピーします。 IF関数の空白コピー

  • D6セルの右下にカーソルをあてる
  • 十字(+)のようなマークがでましたら、クリックしたまま下に引っ張る
  • D7~D16に式がコピーされ、条件通りの値が表示される IF関数の空白表示

どうでしょうか。
合格の人だけをすぐに見つけられる表になりました。
このように、IF関数で空白(空欄)を表示する式を作ることができます。
ちなみにですが、以下の通り論理式に空白(空欄)を指定することもできます。
f:id:yayawowo:20210420173158p:plain

  • =IF(論理式,[真の場合],[偽の場合])の通り、式を埋めていく
    • 論理式・・・【条件】
      • 点数が空白(空欄)だったら:C6=""
    • 真の場合・・・【条件一致】
      • 不合格を表示:$C$3*
    • 偽の場合・・【条件不一致】
      • 合格を表示:$C$2

◆式:=IF(C6="",$C$3,$C$2)</span></b>が完成◆

IF関数とVLOOKUP関数

最後はExcel(エクセル)のIF関数とVLOOKUP関数を組み合わせた応用的な使い方を説明します。
まず、VLOOKUP関数を初めて聞く方もいるかと思いますので、簡単にまとめると以下になります。
今回はExcel(エクセル)のIF関数についての説明を中心にしていますので、VLOOKUP関数の使い方は別でご確認いただけますと幸いです。

= VLOOKUP(
① 検索したい値を設定【検索値】 ,
② 検索する範囲を設定【範囲】,
③ 設定した範囲の列番号を設定【列番号】,
④ 検索する際の型を設定【検索の型】 )

では、早速例題にうつります。

例題

以下条件に応じて、E6セルに入力した人の合否判定を行う表を作成する。

  • 80歳以上:合格
  • 80歳未満:不合格

実践

1. まずVLOOKUP関数で名前に紐づいた点数を検索します。 IF関数とVLOOKUP関数

  • 「=VLOOKUP( 検索値,範囲,列番号,[検索の型] )」の通り、式を埋めていく
    • 検索値
      • 検索したい名前(ラクス太郎)を指定:E6
    • 範囲
      • 点数表の範囲から検索する:B6:C9
    • 列番号
      • 検索値があれば、指定した範囲の左から2列目の点数を返す:2
    • 検索の型
      • ただし、検索値は完全一致で返す:FALSE

◆式:=VLOOKUP(E6,B6:C9,2,FALSE)が完成◆

以下の通り、名前に紐づいた点数を返すことができましたので、この結果に応じて合否判定もしていきたいと思います。
IF関数とVLOOKUP関数結果

2. Excel(エクセル)のIF関数を利用して合否判定を行います。 IF関数とVLOOKUP関数の合否判定

  • =IF(論理式,[真の場合],[偽の場合])の通り、式を埋めていく
    • 論理式・・・【条件】
      • もし検索した点数が80点以上だったら:VLOOKUP(E6,B6:C9,2,FALSE)>=80
    • 真の場合・・・【条件一致】
      • 合格を表示:$C$2
    • 偽の場合・・【条件不一致】
      • 不合格を表示:$C$3

◆式:=IF(VLOOKUP(E6,B6:C9,2,FALSE)>=80,$C$2,C3)が完成◆

まとめ

今回はExcel(エクセル)のIF関数の入門的な内容から、少し応用的なものまでご紹介しました。
Excel(エクセル)は私だけでなく、皆さんが業務を行う上でも利用機会が多いツールでもあるかと思います。
最近は、Googleスプレッドシートを利用する方も多いと思いますので次はその内容についてまとめております。

最後にはなりますが、本内容が1つでも皆様のお役に立てていれば幸いです!


Excel(エクセル)のIF関数については以上となりますが、最後に宣伝をさせてください!
当社ではエンジニア中途採用に力を入れております。
もし、当社の雰囲気・技術内容等にご興味を持たれましたら以下サイトの募集職種をお気軽にご確認ください!

◆エンジニア中途採用サイト
career-recruit.rakus.co.jp

どの職種に応募すれば良いかわからないという方は、カジュアル面談も随時行っております。
以下フォームよりお申込みください。

◆カジュアル面談お申込みフォーム
forms.gle

まずは会社の雰囲気を知りたい方は、毎週開催しているイベントにご参加いただくと良いと思います。

◆イベント情報
rakus.connpass.com

長々と失礼しました。
今後とも、ラクスを宜しくお願い致します。


  1. 表中のある項目(セル)に特定の値を入力して選択状態にし、そのままマウスなどのドラッグ操作で縦あるいは横に選択領域を広げていくと、新たに選択された項目に次々に連続した値が入力されていく。

Copyright © RAKUS Co., Ltd. All rights reserved.