Excel

IF関数を使って複数の条件、条件分岐を指定するテクニック|Excel

 

Excel(エクセル)関数の1つ、IF(イフ)関数で、「得点が、80点以上ならA、70点以上80点未満ならB、60点以上70点未満ならC、60点未満なら・・・」というような複数条件を指定したいことがあると思います。

IF関数|複数条件の指定完成イメージ

 

この記事では、IF関数で複数条件を指定するテクニックを紹介します。

 

 

IF(イフ)関数で複数条件を指定する

IF関数の書式

IF関数は、[=if( 論理式 , 真の場合 , 偽の場合 )]という書式で表されます。

IF関数の基本的な使い方については、以下の記事で図解入りで説明していますのでご確認ください。

IF関数|基本的な使い方
IF関数の基本的な使い方、不等号や等号を使った表現をわかりやすく解説

 

IF関数で複数の条件を指定する方法(条件が2つの場合)

IF関数で複数条件を指定するには、IF関数の中にIF関数を入れます(ネスト)。

[=if( 論理式 , 真の場合 , 偽の場合 )]の偽の場合の部分に、さらにIF関数を組み込み、[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , 偽の場合 ))]という感じにします。

 

具体例で説明していきます。

今、B列が80点以上のときはAを、70点以上80点未満のときはBを、それ以外のときは、を表示することを考えます。

 

論理式を入力する

まずは、[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , 偽の場合 ))]の最初の論理式の部分です。

「B列が80点以上のとき」なので、C2セルには、[=IF(B2>=80,]と入力します。

IF関数|B列が80点以上のとき

 

値が真の場合を入力する

B列が80点以上のときはAなので、[=IF(B2>=80,"A",]と続けます。Aは文字列なので、ダブルクォーテーション[""]でAを囲んでください。

IF関数|B列が80点以上のときはA

 

2つ目のIF関数の論理式を入力する

次は、2つ目のIF関数、[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , 偽の場合 ))]の部分です。

 

70点以上80点未満の表現は、最初の論理式で、「80点以上」が抽出されているので、70点以上としてあげればOKです。

ですから、[=IF(B2>=80,"A",IF(B2>=70,]と続けます。

IF関数|70点以上80点未満

 

2つ目のIF関数の真の場合を入力する

70点以上80点未満のときはBなので、[=IF(B2>=80,"A",IF(B2>=70,"B",]と続けます。Bは文字列なので、ダブルクォーテーション[""]でBを囲んでください。

IF関数|70点以上80点未満のときはB

 

2つ目のIF関数の偽の場合を入力する

最後に、2つ目のIF関数、[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , 偽の場合 ))]の部分です。

 

「80点以上でも、70点以上80点未満でもないときは、-を表示する」ので、

[=IF(B2>=80,"A",IF(B2>=70,"B","ー"))]と続けます。

これで条件が2つの場合のIF関数の完成です。

IF関数|-を表示する

 

[Ctrl]+[Enter]で確定する

[Ctrl]+[Enter]と押して確定します。※C2セルが選択されたままになります。

IF関数|C2セルを[Ctrl]+[Enter]で確定

 

C2セル~C7セルを選択する

C2セル~C7セルを選択します。

IF関数|C2セル~C7セルを選択

 

[Ctrl]+[D]で数式をコピーする

上のセルのデータをコピーする(下にコピー)ショートカットキー[Ctrl]+[D]と押します。

参考いろいろな入力・コピーのしかたがあります。[Ctrl]+[D]は一例です。

IF関数|C2セル~C7セルに数式を入力する

 

IF関数で複数の条件を指定する方法(条件が3つの場合)

条件が3つの場合の[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , 偽の場合 ))]の偽の場合の部分に、さらにIF関数を組み込み、[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , if( 論理式 , 真の場合 , 偽の場合 )))]という形にします。

 

今回も具体例で説明します。

今、B列が80点以上のときはAを、70点以上80点未満のときはBを、60点以上70点未満のときはCを、それ以外のときは、を表示することを考えます。

 

3つ目のIF関数の論理式を入力する

[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , if( 論理式 , 真の場合 , 偽の場合 )))]の3つ目の論理式の部分を入力します。

 

60点以上70点未満の表現は、最初の論理式で、「80点以上」を、2つ目の論理式で、「70点以上80点未満」を抽出しているので、[IF(B2>=60,]としてあげればOKです。

ですから、[=IF(B2>=80,"A",IF(B2>=70,"B",]に続けて、[IF(B2>=60,]と入力します。

IF関数|3つ目の論理式

 

3つ目のIF関数の真の場合を入力する

60点以上70点未満のときはCなので、[=IF(B2>=80,"A",IF(B2>=70,"B",IF(B2>=60,"C",]と続けます。Cは文字列なので、ダブルクォーテーション[""]でCを囲んでください。

IF関数|3つ目の真の場合

 

3つ目のIF関数の偽の場合を入力する

最後に、3つ目のIF関数、[=if( 論理式 , 真の場合 ,if( 論理式 , 真の場合 , if( 論理式 , 真の場合 , 偽の場合 )))]の部分です。

 

「80点以上でも、70点以上80点未満でも、60点以上70点未満でもないときは、-を表示する」ので、

[=IF(B2>=80,"A",IF(B2>=70,"B",IF(B2>=60,"C","ー")))]と続けます。

IF関数|3つ目の偽の場合

 

これで条件が3つの場合のIF関数が完成です。

 

[Ctrl]+[Enter]で確定する

[Ctrl]+[Enter]と押して確定します。※C2セルが選択されたままになります。

IF関数|C2セルを[Ctrl]+[Enter]で確定

 

フィルハンドルをダブルクリック

C2セルの右下のフィルハンドルをダブルクリックします。マウスの先端が[]になるのを確認してください。

IF関数|フィルハンドルをダブルクリック

 

数式がコピーされる

C2セル~C7セルまで数式が入力されます。

IF関数|条件3つ目|C7セルまで数式入力された




 

関連記事

参考文献

-Excel
-

© 2021 まなびっと Powered by AFFINGER5