PR

【Excel】VLOOKUP関数の完全ガイド

エクセル
広告

はじめに

ExcelのVLOOKUP関数は、データベースや表計算でよく使用される非常に便利な関数です。特定の値を検索し、その値に対応する別のデータを取得するために使用されます。この記事では、VLOOKUP関数の基本的な使い方から、応用的なテクニックまでを詳しく解説します。

VLOOKUP関数の使い方(結論)

=VLOOKUP(検索する値, 表全体, 取得したい列番号,FALSE)

基本的な例

次に、基本的なVLOOKUPの例を見てみましょう。以下の表があるとします。

ここで、IDを基に名前を検索したい場合、次のようにVLOOKUP関数を使用します。

<質問>
IDが3の名前を取得したい。

<答え>
検索する値 → 3
表全体 → $A$2:$C$4 ※A2:C4よりF4キーを押すと$A$2:$C$4に変わる
取得したい列番号 → 2 ※最初の列が1となるので「名前」列は2になる
=VLOOKUP(3, $A$2:$C$4, 2, FALSE)

この式は、「IDが3の人の名前を検索し、完全一致の場合に名前を返す」という意味です。

結果
「花子」になります。

広告

VLOOKUP関数の基本

VLOOKUPは「Vertical Lookup」の略で、垂直方向にデータを検索するために使用されます。この関数は次の構文で使用されます:

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

パラメータの説明

  • lookup_value: 検索する値。これは、検索するキーワードやデータです。
  • table_array: データが格納されている範囲。この範囲は、検索する表全体を指定します。
  • col_index_num: 取得したいデータが存在する列番号最初の列が1となります。
  • range_lookup: 検索方法を指定します。TRUEは近似値、FALSEは完全一致を意味します。

よくある問題とその解決策

1. #N/Aエラー

これは、指定したlookup_valueが見つからない場合に発生します。

例えば、検索値がテーブルに存在しない場合です。このエラーを回避するためには、IFERROR関数を組み合わせることができます:

=IFERROR(VLOOKUP(lookup_value, table_array, col_index_num, FALSE), "見つかりません")

2. テーブル範囲の変更

データの範囲が変更されると、VLOOKUPが正しく動作しない場合があります。これを防ぐために、名前付き範囲を使用することも考えられます。名前付き範囲を設定すると、範囲が変わっても自動的に対応できます。

3. 部分一致と完全一致

VLOOKUPで部分一致を使用すると、予期しない結果が返されることがあります。これを防ぐためには、常にrange_lookupをFALSEに設定することで、完全一致を使用するようにしましょう。

広告

VLOOKUPの応用

1. 複数条件での検索

標準のVLOOKUPは単一条件での検索に適していますが、複数条件で検索する場合には、他の関数と組み合わせる必要があります。例えば、INDEXとMATCH関数を組み合わせると複数条件での検索が可能です:

=INDEX(column_to_return, MATCH(1, (condition1_range=condition1_value)*(condition2_range=condition2_value), 0))

2. 別シートや別ブックからのデータ検索

VLOOKUPは別シートや別のExcelブックからデータを検索することもできます。別シートから検索する場合は、table_arrayにシート名を含めるだけです:

=VLOOKUP(lookup_value, シート名!範囲, col_index_num, FALSE)

別のブックから検索する場合は、そのブックが開いている必要があります。閉じている場合、Excelはエラーを返します。

VLOOKUPとXLOOKUPの比較

Excelの新しいバージョンでは、XLOOKUPという強力な関数が導入されました。VLOOKUPと比較して、XLOOKUPは以下の点で優れています:

  • 双方向検索: VLOOKUPは左から右への検索のみ可能ですが、XLOOKUPはどちらの方向にも検索できます。
  • 近似値の設定が不要: XLOOKUPはデフォルトで完全一致を検索し、近似値検索も簡単に設定できます。
  • エラー処理: XLOOKUPはIFERRORを組み合わせる必要がなく、エラー処理が内蔵されています。

XLOOKUPの基本構文

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

まとめ

VLOOKUPは、Excelでデータを検索する際に非常に強力なツールです。基本的な使用方法を理解するだけでなく、応用テクニックを習得することで、より効率的にデータを扱うことができます。特に、複数条件での検索やエラー処理、別シートや別ブックからのデータ取得など、多くの場面で役立ちます。Excelの新しいバージョンを使用している場合は、XLOOKUPも検討するとさらに便利でしょう。

これで、VLOOKUP関数の基本から応用までのガイドを終わります。実際に手を動かして試してみることで、さらに理解が深まるでしょう。