VLOOKUP の使い方と使えない・エラーでお困りの方へ|EXCELのキホン

2018/08/07





今回は VLOOKUP の使い方 です。
今さらかもしれませんが h1r0-style.net で扱うExcelネタは「ちょっとマイナーでひねくれた小ワザ」というのをモットーとしています。
※Excel関連記事の一覧はこちらから。

ですが、自分の職場などで相談を受けるのは意外と基本的なことばかり。
そこでたまには基本的なトピックも扱おう、ということで 今回からランダム掲載するのが「EXCELのキホン」。

中級ユーザーさんくらいまでは退屈しないで読んでいただけるような内容にするよう心掛けていきますのでよろしくお付き合いください。

VLOOKUP関数

冒頭でも触れましたが「EXCELのキホン」第一回目は、超メジャー関数のひとつ VLOOKUP関数 の使い方についてです。
うまく使えない、エラーで困っているという方へも解決のヒントを書いておきたいと思います。




VLOOKUP の働き

VLOOKUP関数 は複数列からなる表データから任意の行と列に該当するデータを検索し、値として返す関数です。

図で表すとこんな感じ。

Excelのアプリケーション上の説明で言い換えると「指定された範囲の1列目で特定の値を検索し、指定した列の同じ行にある値を返します。」

VLOOKUP の数式

VLOOKUP関数 の数式は;

=VLOOKUP ( 検索値, 範囲, 列番号, [検索方法] )

のように表されます。

数式の最後の [検索方法] の使い方については後ほど説明します。

VLOOKUP の使い方

では、具体的な VLOOKUPの使い方 についてサンプルを使って説明します。

下の図は、セルA6からD10まで(水色セル)が商品とその単価や納期をまとめた一覧表です。

▲セルA7~10は昇順に並んでいます。

そして、これからの作業は VLOOKUP を使って、セルB1ピンクセル)に商品コードが入力されると、複数のセル セルB3、B4、D3緑セル)にそれぞれの文字や数字が自動で表示される仕組みを作ります。

まず、セルB1に商品コードを入力します。
※サンプルはプルダウンリストから選べるようにしていますが、直接入力で構いません。

VLOOKUPを複数セルに仕込む活用例

つぎに、セルB1に入力された商品CD「A-002」に反応して、自動で文字や数字が反映するように、複数のセル(セルB3、B4、D3)に VLOOKUP の数式を入力していきます。

セルB3には、商品CD「A-002」の商品名を表示させるので、入力される数式は;

=VLOOKUP (B1, A7:D10, 2, FALSE )

となります。つまり、

セルB1の値(A-102)を、セルA7~D10の左端の列から検索し、同じ行の2列目(=商品名の列)に入っている値を表示しなさい

という意味の記述です。

セルB3に VLOOKUP の数式を入力すると、セルB3には A-002 に対応した商品名「外付けHDD」が正しく表示されました。

同様にセルB4には「=VLOOKUP ( B1, A7:D10, 4, FALSE ) 」また、セルD3には「=VLOOKUP ( B1, A7:D10, 3, FALSE )」と入力します。

すると、下のように該当列の値が表示されます。

ちなみに、商品CDを「C-212」に変更すると
▲セルB3, B4, D3 複数のセルが連動して値が変わります

検索方法 TRUE / FALSE について

VLOOKUPが使えない・エラーになるという方へ

ここで説明しておきたいのが、上の数式の最後に入力された検索方法「FALSE」の意味です。

数式の最後の「検索方法」には、TRUE か FALSE が入力されます。省略することも状況によっては可能です。

検索方法に TRUE を入力するか省略すると、検索値が見つからない場合に検索値未満の最大値を検索値として考えます。
例:表の検索列に10, 20, 30と値が並んでいて、検索値が15だった場合は15未満の最大値である10として値を返します。

注)このようなときは、A列(検索対象)は 昇順に並べておく必要があります
例えば、A列が西暦だった場合は下段に行くにしたがって現代に近づくように表を配列しておきます。

逆に、FALSE を入力すると、検索値と完全一致する値だけが検索され、検索値が見つからなかった場合は「#N/A」のエラーが返されます。

TRUE or 省略:近似一致
FALSE:完全一致

と覚えておきましょう。
VLOOKUPが使えない、エラーになってしまうという方は上記諸条件を確認してみるのもよいかと思います。


VLOOKUP関数の横バージョン

横方向へ検索する HLOOKUP関数 に関する記事はこちらから。

VLOOKUPについては基本にとどめていますが、HLOOKUPの記事は複数条件に合致するデータの抽出など 応用技を紹介していますので、縦横の違いはあれど VLOOKUP にも応用が利きますのでぜひ一緒に読んでみてください。

関連記事



併せて読んでおくとさらに便利

HLOOKUP関数とVLOOKUP関数の違いと使い方
HLOOKUP関数・VLOOKUP関数
「HLOOKUP関数」をご存知ですか? HLOOKUPとVLOOKUPとの違いについて解説します。HLOOKUPを使った複数条件に合致するデータの抽出方法や、HLOOKUPの[#N/A]エラーを非表示にする方法などなど。

エクセルのプルダウンを連動させる方法|Excelのキホン
プルダウンリスト
エクセルで2つのプルダウンリストを連動させる方法を解説。Excelのひとつめのプルダウンで選択した値に連動して 二つ目のプルダウンの内容が変わります。INDIRECT関数がいい仕事を...



オートフィルオプションの表示・非表示の切り替え|Excelのキホン
オートフィル
「オートフィルオプション」、使いこなしていますか?Excelを使っていると、セルの値や数式を下方向や横方向にコピー(オートフィル)する機会が頻繁に訪れますが、こんな時に役立つのが「オートフィルオプション」です。

INDIRECT関数で別シートの同一セルにある値をリスト化・集計する方法
INDIRECT関数・集計
別シートの同一セルに入力された値を参照し、リスト化・集計する方法について解説します。Excelで複数シートの同一セルの値を一覧にまとめるワザがあるのです。

 

※その他関連記事は、このページの下の方にもあります。

-EXCEL&VBA
-

シェアしていただけると助かります。