IFの入れ子を駆使して複雑な条件を記述する

 IF関数を入れ子(ネスト)にすると、「400点以上は『合格』、200点未満は『不合格』、そうでないなら『再試験』」といった複雑な条件も指定できる(図4)。とはいえ数式が長くなるので、楽に入力するツボを伝授しよう。入れ子のIF関数を「関数の引数」画面で入力する裏ワザだ。

図4 IF関数を入れ子にして、B列の得点が400以上なら「合格」、200未満なら「不合格」、そうでないなら「再試験」と表示した。関数は64個まで入れ子にできる
図4 IF関数を入れ子にして、B列の得点が400以上なら「合格」、200未満なら「不合格」、そうでないなら「再試験」と表示した。関数は64個まで入れ子にできる

 まずは「関数の引数」画面を開いて、関数でない通常の引数を入力する(図5~図7)

図5 C2セルを選択して「fx(関数の挿入)」ボタンをクリック(1、2)。「関数の挿入」画面が開いたら、「関数の分類」欄で「論理」を選び、「関数名」欄で「IF」を選択(3、4)。画面下にある「OK」ボタンをクリックする
図5 C2セルを選択して「fx(関数の挿入)」ボタンをクリック(1、2)。「関数の挿入」画面が開いたら、「関数の分類」欄で「論理」を選び、「関数名」欄で「IF」を選択(3、4)。画面下にある「OK」ボタンをクリックする
図6 C2セルに「=IF()」と入力され、同時に「関数の引数」画面が開いて「論理式」欄でカーソルが点滅する。その状態でB2セルをクリックする
図6 C2セルに「=IF()」と入力され、同時に「関数の引数」画面が開いて「論理式」欄でカーソルが点滅する。その状態でB2セルをクリックする
図7 「論理式」欄に「B2」と入力された。その後ろに「>=400」と入力(1)。「真の場合」欄をクリックして「合格」と入力する(2)
図7 「論理式」欄に「B2」と入力された。その後ろに「>=400」と入力(1)。「真の場合」欄をクリックして「合格」と入力する(2)

 ポイントは入れ子にしたいIF関数の入力方法だ。こちらは引数の中身を省いて「IF()」と入力する(図8)

図8 「偽の場合」欄をクリックして半角で「IF()」と入力する(1)。「真の場合」欄の「合格」は文字列なので自動的に半角ダブルクォーテーションでくくられる。数式バーにある2つめの「IF」をクリックする(2)
図8 「偽の場合」欄をクリックして半角で「IF()」と入力する(1)。「真の場合」欄の「合格」は文字列なので自動的に半角ダブルクォーテーションでくくられる。数式バーにある2つめの「IF」をクリックする(2)

 そうしたら、数式バーにある2つめの「IF」をクリック。すると「関数の引数」画面が2番目のIF関数のものに切り替わる(図9)。ここで2番目のIF関数の引数を入力すればよい。

図9 「関数の引数」画面が2番目のIF 関数のものに切り替わる。図7と同様の手順で「論理式」「真の場合」「偽の場合」の引数を入力。画面下の「OK」を押すと入れ子のIF関数式の出来上がりだ
図9 「関数の引数」画面が2番目のIF 関数のものに切り替わる。図7と同様の手順で「論理式」「真の場合」「偽の場合」の引数を入力。画面下の「OK」を押すと入れ子のIF関数式の出来上がりだ