VLOOKUP 関数

表や範囲から行ごとに数値や文字列などを検索するには、検索/行列関数の 1 つ、VLOOKUP を使用します。たとえば、部品番号によって自動車部品の価格を検索できます。

その最も簡単な形式で、VLOOKUP 関数は次のようになります。

= VLOOKUP (検索する値, 値を検索する範囲, 戻り値を含む範囲の列の番号, 完全一致か近似一致か - 0/FALSE か 1/TRUE で指定)。

お使いのブラウザーではビデオがサポートされていません。 Microsoft Silverlight、Adobe Flash Player、Internet Explorer 9 のいずれかをインストールしてください。

これは、「VLOOKUP: 用途と使い方」というトレーニング コースに含まれているビデオです。

ヒント: 見つけて戻したい値 (部品の価格) の左側に検索する値 (部品番号) がくるようにデータを配置するのが VLOOKUP の秘訣です。

表内で値を検索するには、VLOOKUP 関数を使用します。

構文

VLOOKUP(検索値, 範囲, 列番号, [検索の型])

次に例を示します。

  • =VLOOKUP(105,A2:C7,2,TRUE)

  • =VLOOKUP("前田",B2:E7,2,FALSE)

引数名

説明

検索値    (必須)

検索の対象となる値。この値は、範囲で指定したセル範囲の左端の列に入っていなければなりません。

たとえば、範囲がセル B2:D7 である場合、検索値は列 B に入っていなければなりません。下の図を見てください。検索値には値、またはセル参照を指定できます。

範囲    (必須)

VLOOKUP が検索値と戻り値を検索するセル範囲。

セル範囲の左端の列には必ず検索値 (たとえば、下の図では姓) が含まれます。また、セル範囲には見つけて戻したい値 (下の図では名) が入っていなければなりません。

ワークシートで範囲を選択する方法については、こちらを参照してください。

列番号    (必須)

戻り値を含む列の番号。範囲の左端の列が 1 になります。

検索の型    (省略可)

VLOOKUP を使用して、近似一致を検索するか、完全一致を検索するかを指定する論理値です。

  • TRUE を指定すると、左端列は数字または英字を基準に並べ替えられているものとみなされ、検索値に最も近い値が検索されます。この引数を省略した場合は、TRUE が指定されたものとみなされます。

  • FALSE を指定すると、左端列から検索値と完全に一致する値が検索されます。

利用方法

VLOOKUP の構文を作成するには、4 つの情報が必要になります。

  1. 検索する値、検索値とも呼ばれます。

  2. 検索値が含まれるセル範囲。VLOOKUP が正常に機能するために、検索値は範囲の最初の列に必ず位置している必要があることに注意してください。たとえば、検索値がセル C2 にある場合、範囲は C 列から始まる必要があります。

  3. 戻り値を含む範囲内の列番号。たとえば、B2:D11 を範囲として指定した場合、B を最初の列、C を 2 番目というように数えます。

  4. 必要に応じて、戻り値として近似一致を検索する場合は TRUE、完全一致を検索する場合は FALSE を指定できます。何も指定しない場合、既定値は TRUE、つまり近似一致を常に返します。

以上をまとめると次のようになります。

=VLOOKUP(検索値, 検索値を含む範囲, 戻り値を含む範囲内の列番号, 近似一致には TRUE または完全一致には FALSE を必要に応じて指定)。

次の図では、VLOOKUP を設定して、ブレーキ ローターの価格、85.73を戻り値として取得しています。

VLOOKUP の使用例
  1. D13 は検索値、つまり検索する値です。

  2. B2 から E11 (表内の黄色で強調表示されている部分) は範囲、つまり検索値が含まれているセル範囲です。

  3. 3 は列番号、つまり戻り値を含む範囲内の列番号です。この例では、範囲内の 3 番目の列は「部品価格」であるため、数式の結果は「部品価格」列から返されます。

  4. FALSE は検索の型で、この場合の戻り値は完全一致になります。

  5. VLOOKUP 数式の結果は 85.73 で、ブレーキ ローターの価格です。

以下は、VLOOKUP のその他の例です。

使用例 1

VLOOKUP の使用例 1

使用例 2

VLOOKUP の使用例 2

例 3

VLOOKUP の使用例 3

使用例 4

VLOOKUP の使用例 4

使用例 5

VLOOKUP の使用例 5

問題

原因

戻された値が正しくない

検索の型がTRUE、または指定を省略した場合、左端列を英字または数値順に並べ替えておく必要があります。左端列が並べ替えられていない場合、想定外の値が戻される可能性があります。左端列を並べ替えるか、または FALSE を使用して、完全一致を検索してください。

セルに #N/A と表示される

  • 検索の型がTRUEの場合、検索値の値が範囲の左端列にある最小値よりも小さいと、#N/Aエラー値を返します。

  • 検索の型 が FALSE の場合、#N/A エラー値は、完全に一致する値が見つからなかったことを表します。

VLOOKUP で #N/A エラーを解決する方法の詳細については、「VLOOKUP 関数の #N/A エラーを修正する方法」を参照してください。

セルに #REF! と表示される

列番号範囲に含まれる列の数を超えている場合、#REF!エラー値を返します。

VLOOKUP で #REF! エラーを解決する方法の詳細については、「エラー値 #REF! を修正する方法」を参照してください。

セルに #VALUE! と表示される

範囲 が 1 未満の場合、#VALUE! エラー値を返します。

VLOOKUP で #VALUE! エラーを解決する方法の詳細については、「VLOOKUP 関数の #VALUE! エラーを修正する方法」を参照してください。

セルに #NAME? が表示される

#NAME?エラー値は、通常、数式に引用符が足りないことを表します。人物名を検索する場合は、数式内の名前を必ず引用符で囲んでください。たとえば、名前を "前田" として、=VLOOKUP("前田",B2:E7,2,FALSE) のように入力します。

詳細については、「エラー値 #NAME! を修正する方法」を参照してください。

操作

理由

検索の型には絶対参照を使う

絶対参照を使うと、数式を下方向へコピーした場合に常にまったく同じ検索範囲を参照することができます。

セルの絶対参照については、こちらを参照してください。

数値や日付を文字列として保存しない。

数値や日付型の値を検索する場合は、 範囲の左端の列にあるデータが文字列として保存されていないことを確認してください。文字列として保存されている場合、誤った値や想定外の値が返されることがあります。

左端列を並べ替える

検索の型がTRUE の場合は VLOOKUPを使う前に、範囲の左端列を並べ替えます。

ワイルドカード文字を使う

検索の型 が FALSE で検索値が文字列の場合、検索値に疑問符 (?) やアスタリスク (*) をワイルドカード文字として使うことができます。疑問符は任意の 1 文字を表し、アスタリスクは 1 文字以上の任意の文字列を表します。疑問符やアスタリスク自体を検索する場合は、"~*" のように、その文字の前に半角のチルダ (~) を付けます。

たとえば、=VLOOKUP("Fontan?",B2:E7,2,FALSE)は、「Fontan」で始まり、任意の 1 文字が直後にくる名前をすべて検索します。

データに誤字が含まれていないことを確認する。

左端の列にある文字列を検索するときは、この列にあるデータの先頭または末尾に余分なスペースがないこと、まっすぐな引用符 (' または ") と丸みを帯びた引用符 (‘ または “) が混在しないこと、印刷されない文字が含まれていないことを確認してください。このいずれかに該当する場合は、予期しない値が返されることがあります。

正確な結果を得るために、CLEAN 関数または TRIM 関数を使って、表のセル値の末尾にある余分なスペースを削除してください。

特定の関数について質問がある場合

Excel のコミュニティ フォーラムに質問を投稿してください

Excel の機能を向上させるためのお願い

次のバージョンの Excel の改善に関して、ご提案はございませんか。提案がありましたら、Excel UserVoice (Excel ユーザー ボイス) のトピックをご覧ください。

関連項目

クイック リファレンス カード: VLOOKUP 復習

クイック リファレンス カード: VLOOKUP トラブルシューティング ヒント

VLOOKUP について知っておくべきこと

VLOOKUP 関数の #VALUE! エラーを修正する方法

VLOOKUP 関数の #N/A エラーを修正する方法

Excel の数式の概要

壊れた数式のエラーを回避する方法

Excel 2016 で数式のエラーを検出する

Excel 関数 (アルファベット順)

Excel 関数 (機能別)

共有 Facebook Facebook Twitter Twitter メール メール

この情報は役に立ちましたか?

ありがとうございます。その他のフィードバックはありませんか?

改善内容をお聞かせください

ご意見をいただきありがとうございます。

×