条件をつけて場合分けできるIF関数

関数

IF関数とは

=IF(条件式 , 真 , 偽 )

条件式…確認したい内容

真  …条件を満たした場合に表示したいもの

偽  …条件を満たさない場合に表示したいもの

例)IF(A1=B1 , “同じ” , “違う” )

条件式の作り方

条件式は関数を利用することで様々な形で作ることができます。ここでは、基本的な式のみを紹介します。

数式意味
=A1 = 1A1は1と等しい
<>A1 <> 1A1は1と等しくない
>A1 >1A1は1より大きい
>=A1 >= 1A1は1以上
<A1 < 1A1は1より小さい
<=A1 <= 1A1は1以下

上記の不等号を駆使することで、大抵の条件を設定できます。

注意点

1つ目 条件式のデータ型について

条件式「A1 = B1」で各項のデータ型が異なると、一見同じ値に見えても、一致しないデータと判断されます。

例えば「100(文字列)=100(数値)」となっていると、ぱっと見は同じデータだが、不一致として認識されます。

このような場合には、データ型を変換する必要があります。その詳細については下記記事を参考にしてください。

2つ目 真・偽の表記について

真・偽の場合に表示する値をダブルクォーテーション「”」をつけずに立式するとエラーになります。

表示するものが数式やセルの値であれば不要ですが、特定の値を表示するなら「””」のようにダブルクォーテーションで囲む必要があります。

他の関数と組み合わせた活用例

IF関数は応用が効くため、工夫すれば様々な活用が可能になります。

条件式に関数を組み込むだけでなく、真・偽の部分に関数を入れることも可能です。

ここでは筆者自身がIF関数と組み合わせてよく使う例を紹介します。

  • AND関数
  • OR関数
  • IF関数
  • VLOOKUP関数

各関数の説明は下記記事を参考にしてください。

例)個人のテスト結果分析

  • 数学・英語ともに8割以上なら◎
  • 数学・英語どちらかが8割以上なら○
  • 数学・英語どちらも8割以下なら×

IF{AND(英語>=80%,数学>=80%),”◎”IF(OR[英語>=80%,数学>=80%],”○”,”×”)}

という数式を利用すれば求める条件を抽出できます。

しかし、条件にも真・偽にも数式があるため複雑です。そこで分解して考えるために下図をご覧ください。

上記のような条件分岐をさせると求める条件を抽出できます。

なので思考回路としては、先に条件分岐を考え、その分岐を立式すれば複数の条件に渡るIF関数を立式できます。

少々複雑な数式です。しかし、このレベルのIF関数を扱うことができれば、関数について十分な能力が身についたと自負して良いです。現時点で扱えなくても、何度もトライしているうちに、他の関数を利用しているうちに、できるようになるので諦めずにIF関数を駆使し続けてください!

VBAでのIF関数

マクロ作成の際にもIF関数を利用できます。

VBAであれば、先述した関数を組み合わせるよりも簡単に複数の条件分岐を場合分けできます。

詳細については下記記事を参照してください。

コメント

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