最重要関数の1つVLOOKUP関数のしくみ

私が考える最重要関数の1つは、VLOOKUP関数です。
このVLOOKUP関数について、改めて解説してみます。

WS000000

対応するデータを表示させる

VLOOKUP関数は対応するデータを表示させることができます。
たとえば次のようなデータがあるとして、顧客コードに対応した顧客名を入力するとします。

WS000001

方法としては、
・コード表を見ながら直接入力する
・IF関数を使う
という方法が考えられますが、どちらも非常にめんどくさく、ミスの可能性も高いです。
件数が少ない場合はIF関数でもできないことはありませんが、多くなると厳しいでしょう。

そこで、コード表を準備し、VLOOKUP関数を使います。

コード表はこのようなものです。
WS000003

VLOOKUP関数は次のように入力します。
「セルA2と同じものをD列から探して、同じものがあれば、D列からE列の範囲から2つめのデータを表示してください」という意味です。
WS000004

顧客コード[1]に対応する[新宿証券]が表示されます。
WS000005

関数のしくみ

VLOOKUP関数のしくみがなかなかわからないという方は、「=VLOOKUP(」と入力してから[関数の挿入]ボタンをクリックしてみてください。
WS000006

このようにボックスが表示され、説明にそって入力できます。
WS000007

○検索値
コード表から探したいデータが入っているセルを指定します。
この場合はA2の「1」です。

○範囲
検索値がある列から表示させたいデータがある列までを選択します。
マウスでドラッグして指定すれば大丈夫です。
注意すべきなのは、検索値が入っている列が必ず一番左になるように設定することです。
DからEと指定すれば、検索値「A2」は一番左のD列にあるため問題ありません。
表示させたいE列も範囲に入っています。
WS000008

○列番号
列番号は、上記の範囲のうち、何番目を表示させるかを指定します。
事例の場合、D列が1番目、E列が2番目です。
2番目のE列にあるデータを表示させたいため、[2]と指定します。

○検索方法
検索方法とは、完全に一致するものを検索する(false)か、近似値を検索する(True)かを指定するものです。
近似値とは、だいたい近い値という意味ですので、通常はFalseにしておきます。

数式をコピーすれば、すべてのセルに対応データが入ります。
非常に便利です。
WS000010

応用編

応用編として次のような事例を考えてみます。
○事例1
WS000011

空欄に顧客名を表示させるにはどうすればいいでしょうか?

セルA2を探すのは、最初の事例と同じです。
範囲(D列からF列)、列番号(3)が異なります。
WS000012

○事例2
次のような場合はどうなるでしょう?
WS000013

検索値がセルB2に変わります。
WS000014

○事例3
地域と顧客名を表示させる場合です。
WS000016

それぞれのセルにVLOOKUP関数を入力すれば完成します。
WS000017

WS000018

しかし、それぞれに入力するのは手間もかかり、めんどくさいです。
セルB2(地域)に入れた数式をセルC2(顧客名)にコピーすると、正しく表示されなくなります。

そこで、私はこのように入力するようにしています。
WS000019

検索値A2の列のみを固定させ、範囲は固定、列番号は、Column関数で自動的にカウントさせています。
項目やデータ数が多い表でVLOOKUP関数を使うときに便利です。
例)月別の推移表、顧客管理データなど

サンプルでは、[担当者]という項目を1つ増やして、1000行までデータを増やしています。
参考にしてください。
WS000022

EX-IT サンプルVLOOKUP20120329.xlsx





■スポンサードリンク

【編集後記】
7/21に開催される奥多摩エコ・ジャーニーというレースにエントリーしました。
さわやかな感じですが、99kmを走ります。
制限時間は24時間。もちろん完走をめざします!