6/15/2014

Excel。HLOOKUPを使うと判定分岐は楽にできますね。


Excel。HLOOKUPを使うと判定分岐は楽にできますね。

HLOOKUP

以前、紹介しました、判定分岐が多い場合は、IF+IF関数のネストよりも、
Choose関数を使うのも一つの方法ですよ。

とご紹介しましたが、判定表を作っておくことが出来るならば、

IF+IF関数やChoose関数を使うよりも、HLOOKUP関数を使うほうが、分かりやすくて、
便利なので、今回は、HLOOKUP関数を使って判定分岐を行ってみようと思います。

今回のHLOOKUP関数。VLOOKUP関数の陰に隠れて、日の目を見ませんが、
MOS Excel2010のExpert試験では、試験範囲になっていますし、
覚えておくと色々とアイディアいかんで使えますので、覚えておきましょう。

さて、今回は、仕事で使えるExcel講座で話したことがある内容を元にして、ご紹介していきます。

下記の表があります。

F2:F10までの評価には、
300点なら満点。
200~299点なら、良。
100~199点なら、可。
0~99点なら、不可。
という風に判断分岐をしたいわけです。
通常ならIF+IF+IF関数か、Choose関数を使うのですが、
今回はHLOOKUP関数を使用してやってみようという訳です。

その為に、12行目と13行目に判定表を作っておきます。

では、早速作っていきましょう。
F2をクリックして、関数挿入ダイアログボックスから、
HLOOKUP関数ダイアログボックスを表示していきましょう。

まずは、検索値。VLOOKUP関数の説明の時もいいましたが、
これは、コンビニのレジで考えると、商品のバーコードに当たります。

ですから、山田さんの合計点は?ということになりますので、
検索値は、E2。

つづいて、範囲。これは、判定表になりますので、範囲は、A12:E13となりますが、
このHLOOKUP関数で算出したセルをオートフィルを使って、数式の連続コピーをすると、
当然、セル番地がずれてしまうので、絶対参照を設定する必要があります。

範囲は、$A$12:$E$1

行番号ですが、これは、先程の範囲の中で、何行目のデータをピックアップするのか?
ということになりますので、ここは2行目の評価を検索しますので、

行番号は、2。

最後の検索方法ですが、VLOOKUP関数だと、
だいたいここは、falseあるいは、0(ゼロ)を入力すると思います。

falseは、完全一致。

すなわち、検索値が範囲のデータの中でビンゴのものしか、検索しないわけです。
ここが、今回のポイントでして、0~99点という幅があるわけですね。
ということは、完全一致ではマズいわけですね。

ですので、ここをTRUEにすることで、近似値を含めて検索することが出来るわけです。
よって、
検索方法は、TRUE。

これで、OKボタンをクリックしましょう。
F2には、良と表示されましたね。判定表で確認しても大丈夫ですね。
この数式をオートフィルを使って、数式を連続コピーしてみましょう。


関数からみても、ネストや複雑な事をしなくても簡単に判別することが出来ますので、
もっと、条件が多岐にわたってしまう時などには、判定表が作れるようでしたら、
HLOOKUP関数を使うという方法もある。

ということを覚えておくといいでしょう。