エクセルIF関数の複数条件にネストは不要!LOOKUP関数で短く簡潔に

エクセルIF関数で、3つ以上の複数条件で指定すると、式が長くなり、途中で数式を間違えてしまった、ということはないでしょうか。そこで登場するのがLOOKUP関数です。この関数を使うと、IF関数の長ったらしいネストの式が、こんなにもと、驚くほど簡単に短くなります。長く、複雑になった入れ子を解消できます。

もう、IF関数のネスト(入れ子)は不要です!こんな素晴らしい使い方があったと、改めてLOOKUP関数を見直すことでしょう。数式が見た目もよく、簡潔にまとまります。LOOKUP関数で、IF関数の入れ子を回避しましょう。

これを見ることによって、スキルアップすること間違いありません!

 

 

IF関数の入れ子の問題

エクセルIF関数は、最大64個、入れ子にすることができますが、複数のIFを使って複雑な入れ子にすることは、推奨されていません。正しい結果が返されない可能性があります。

最後まで正しく計算されるとは限りらないので、予想外の結果が返ってくる場合があります。

入れ子が多いほど式を間違える可能性があり、見た目も分かりにくいです。

このIF関数の入れ子の問題を、LOOKUP関数で解消できます。

LOOKUP関数を使うと、長ーいIF関数の入れ子を、こんなにも非常に短く簡潔にできます。

この方法を契約一覧表を基に、契約者の年齢を、年代別に区分しましょう。

IF関数の入れ子の問題をLOOKUP関数で簡潔に短くする

下の表には、契約者の年齢が入力されています。この契約一覧表を使って、IF関数の長ーいネストの式を、短くする方法を説明していきましょう。

この契約者を、年代別にLOOKUP関数で、区分して表示させてみます。

 

 

年代別表示一覧表

年齢表示
20歳未満A
20歳以上30歳未満B
30歳以上40歳未満C
40歳以上50歳未満D
50歳以上E

 

契約者を年代別に区分して、上の表の通りA~Eで表示させてみましょう。

 

C列に、年代別にA~Eで表示させます。C2に、式を入力しましょう。

C2 =LOOKUP(B12,{0,20,30,40,50},{“A”,”B”,”C”,”D”,”E”})

C2の式は、「{0,20,30,40,50},{“A”,”B”,”C”,”D”,”E”}」がポイントになります。

年齢「23」を、検査範囲{0,20,30,40,50}で検索して、一致する値を、対応範囲{“A”,”B”,”C”,”D”,”E”}から返しています。

C2の式をドラッグして、下にコピーしましょう。

年齢別にA~Eで表示されました!

ここで、LOOKUP関数を使うと短い式ですが、IF関数を使うとどのような式になるか、実際に作成してみましょう。

 

 

LOOKUP関数の式をIF関数で作成するとどうなる?

契約者の年齢を年代別に、IF関数で区分して表示させてみましょう。

 

C2に、式を入力しましょう。

C2 =IF(B2<20,”A”,IF(B2<30,”B”,IF(B2<40,”C”,IF(B2<50,”D”,”E”))))

LOOKUPの式と比べてみましょう。

=LOOKUP(B12,{0,20,30,40,50},{“A”,”B”,”C”,”D”,”E”}) と比べて、複雑で分かりにくいです。

入れ子が多くなればなるほど、複雑になり、正しい結果が返されない可能性があります。

LOOKUP関数はあまり知られていない関数ですが、VLOOKUPと同じ検索/行列の関数です。検索、抽出にはVLOOKUP関数がよく使われますが、ここでLOOKUP関数の素晴らしさが分かります。

 

 

関数の説明

LOOKUP関数

エクセルLOOKUP関数は、指定した値を1行または1列からなるセルの範囲、または配列から見つける時に使います。ベクトル形式と配列形式の2種類の使い方がありますが、使用頻度はベクトル形式が高いです。

ベクトル形式の書式と引数

LOOKUP ((検査値, 検査範囲, 対応範囲)

検査値検索する値を指定します。検査値には数値、文字列、論理値が指定できます。または名前やセル参照でも指定できます。
検査範囲検索する範囲を1行または1列で指定します。昇順で並び替えておく必要があります。
対応範囲検索の対象となる範囲を指定します。1行または1列で範囲を指定し、検査範囲と同じサイズにします。

 

配列形式の書式と引数

LOOKUP (検査値,配列)

 検査値検索する値を指定します。検査値には数値、文字列、論理値が指定できます。または名前、セル参照でも指定できます。
 配列検査値と比較するセル範囲を指定します。配列の最初の行、列から検査値を探します。

 

IF関数

エクセルIF関数は、真の場合は真の場合の値を返し、偽の場合は偽の場合の値を返す関数です。IF関数は、エクセル関数の中で使用頻度が高い関数です。他の関数と組み合わせて使用されることも多いです。

IF関数の書式と引数

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

論理式条件式を指定します。
真の場合論理式がTRUEの場合に返す値を指定します。
偽の場合論理式がFALSEの場合に返す値を指定します。省略するとFALSEを返します。

こちらの記事もご覧ください。⇒ワード・エクセル・パワーポイント・アクセスが初心者でも短期間でマスターできる楽パソ!音声と映像で自宅で学べる。

こちらの記事もご覧ください。⇒マイクロソフトオフィスソフトとプログラミングスキルが初心者でも短期間でマスターできる楽パソ!音声と映像で自宅で学べる。

IF関数、AND関数、OR関数の組み合わせ

IF関数のネスト(入れ子)を、簡単に短くする方法を紹介しましたが、それでもIF関数は、よく使われる関数です。他との関数とも組み合わせて使うことが多いですが、中でもAND関数とOR関数とはよく組み合わせます。もし~がAかつB、もし~がAまたはB、の論理式です。これは、データを扱う作業には欠かせないスキルです。

こちらの記事もご覧ください。⇒エクセルIF関数で複数条件!OR関数、AND関数と組み合わせて使う

エクセル・ワード・パワーポイント・アクセス・マクロVBA・WEBプログラミングを入門から応用までらくらくマスターできる ➡ 動画パソコン教材

ワード・エクセル・パワーポイント・アクセスを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓

ワード・エクセルパワーポイント・アクセスとエクセルマクロVBA・WEBプログラミング・パソコンソフト作成を入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓

ワード・エクセル・パワーポイント・アクセスとWEBプログラミングを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
エクセルのマクロとVBAを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓

VBA・Java・WEB・C#・HTML/CSSプログラミングを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓