Excelを使っていると「表から特定の値を探して取り出したい」という場面に多く出会います。そこで活躍するのが「VLOOKUP(ブイルックアップ)」関数です。VLOOKUPは業務で最もよく利用される関数のひとつで、売上管理、在庫管理、人事データの検索など幅広い場面で使えます。しかし一方で、「エラーが出てしまう」「思った通りに結果が返ってこない」という悩みを持つ方も少なくありません。この記事では、VLOOKUP関数の基本から応用までを丁寧に解説し、使いこなすためのコツを紹介します。Excel初心者の方はもちろん、すでに使ったことがある方もより深く理解できる内容です。
VLOOKUP関数は、指定した「検索値」を表の中から探し出し、その行にある別の列の値を返す関数です。構文は以下の通りです。
=VLOOKUP(検索値, 範囲, 列番号, 検索方法)
例えば「商品コードから商品名を検索する」といったシーンで活用されます。
具体例を見てみましょう。
商品コード | 商品名 | 単価 |
---|---|---|
A001 | りんご | 120 |
A002 | みかん | 100 |
A003 | バナナ | 80 |
「A002」という商品コードから商品名を取り出す場合、次のように書きます。
=VLOOKUP("A002", A2:C4, 2, FALSE)
結果は「みかん」と表示されます。
VLOOKUPを使うと、#N/A や #REF! といったエラーが出ることがあります。主な原因を整理しましょう。
エラーが出たらまず「検索値」「範囲」「列番号」の指定を見直しましょう。
検索方法で「TRUE」を指定すると近似一致検索になります。例えば点数に応じて評価をつける場合に便利です。
点数 | 評価 |
---|---|
0 | D |
60 | C |
80 | B |
90 | A |
次の式で「85点」の評価を求めてみましょう。
=VLOOKUP(85, A2:B5, 2, TRUE)
結果は「B」となります。これは「85点以上かつ90点未満の範囲に該当するから」です。
便利なVLOOKUPですが、いくつかの制約があります。
これらの弱点を補うには、後述するINDEX関数やXLOOKUP関数が役立ちます。
注文データに商品コードしかない場合、VLOOKUPを使ってマスタ表から商品名を引き出すことで、見やすい売上表が作れます。
商品コードを入力すると自動で単価が表示され、数量を掛け合わせて金額を計算できます。
社員番号から氏名や所属部署を呼び出すことで、異動リストや給与計算に活用できます。
=IFERROR(VLOOKUP(A2, 商品マスタ!A:C, 2, FALSE), "未登録")
VLOOKUPの弱点を補う組み合わせとして有名なのが「INDEX」と「MATCH」です。
=INDEX(B2:B4, MATCH("A002", A2:A4, 0))
この式では「A002」をA列から探し、該当する行のB列の値を返します。
右から左への検索や列の追加削除に強い点がメリットです。
最近のExcelでは「XLOOKUP」が登場し、VLOOKUPの進化版として注目されています。
=XLOOKUP("A002", A2:A4, B2:B4, "未登録")
XLOOKUPは左右どちらの検索も可能で、列番号指定も不要。
VLOOKUPでの弱点をほぼ解消しています。
VLOOKUP関数は、Excelでのデータ検索を支える基本かつ強力なツールです。検索値・範囲・列番号・検索方法という4つの要素をしっかり理解すれば、多くの業務に応用できます。エラーが出た場合の原因を把握し、IFERRORやINDEX関数、XLOOKUPといった関数と組み合わせることで、より実務に即した使い方が可能です。
Excelの実務スキルを高めるためには、まずVLOOKUPをしっかりマスターすることが近道です。慣れてきたらINDEXやXLOOKUPも取り入れ、検索機能を自在に使いこなせるようにしましょう。