ExcelのVLOOKUP, HLOOKUP, XLOOKUP関数解説

ExcelのVLOOKUP, HLOOKUP, XLOOKUP関数解説

このページでは、Excelでよく使用される検索系関数であるVLOOKUPHLOOKUPXLOOKUPについて、初心者の方にも分かりやすく解説します。各関数の基本的な書式や実際の使用例を交えて説明するので、Excelでのデータ検索や抽出の方法を学ぶのに役立ちます。

目次

VLOOKUPの基本と使用例

VLOOKUP関数は、縦方向(Vertical)に並んだデータから目的の値を探し、対応する値を返す関数です。主に、検索値が含まれる左端の列から探し、同じ行内の他の列のデータを取得するために使用されます。

基本的な書式は以下の通りです。

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

各引数の説明:

  • 検索値:検索したい値。セル参照や直接入力が可能。
  • 範囲:検索範囲。左端の列に検索値がある必要があります。
  • 列番号:検索範囲内で返したいデータがある列番号(左から数えて何列目か)。
  • 検索の型:FALSE(完全一致)またはTRUE(近似一致)。通常、正確な一致を求める場合はFALSEを指定します。

例えば、下記のようなテーブルがあるとします。

  商品ID    商品名    価格    在庫数
  A001     りんご   100    50
  A002     みかん   80     30
  A003     バナナ   120    20
  

「A002」という商品IDに対応する「価格」を取得したい場合、次のような式を使用します。

=VLOOKUP("A002", A2:D4, 3, FALSE)

この式は、A列に「A002」を探し、見つかった行の3列目(価格)を返します。

また、セル参照を用いた例も紹介します。例えば、セルF1に検索したい商品IDが入力されている場合は、以下のようになります。

=VLOOKUP(F1, A2:D4, 3, FALSE)

これにより、セルF1の値に応じた価格が返されます。VLOOKUPは、左端の列のみ検索できるため、検索対象の列を意識して範囲を設定する必要があります。

HLOOKUPの基本と使用例

HLOOKUP関数は、横方向(Horizontal)に並んだデータから目的の値を探し、対応する値を返す関数です。データが横に展開されている場合に有用です。

基本的な書式は以下の通りです。

=HLOOKUP(検索値, 範囲, 行番号, [検索の型])

各引数の説明:

  • 検索値:検索したい値。
  • 範囲:検索を行う範囲。上段に検索値が含まれている必要があります。
  • 行番号:範囲内で返したいデータがある行番号(上から数えて何行目か)。
  • 検索の型:FALSEまたはTRUE。通常はFALSEで完全一致を指定します。

例えば、以下のような表がある場合を考えます。

         A         B       C       D
  1    商品ID    A001    A002    A003
  2    商品名    りんご  みかん  バナナ
  3    価格      100     80     120
  4    在庫数    50      30     20
  

「A003」に対応する「在庫数」を取得するためには、上段の「商品ID」から「A003」を探し、4行目の値を返す必要があります。以下の式がその例です。

=HLOOKUP("A003", A1:D4, 4, FALSE)

また、セル参照を用いると、セルG1に検索したい商品IDがある場合は、次のように記述します。

=HLOOKUP(G1, A1:D4, 4, FALSE)

HLOOKUPは、横方向に展開されたデータの中から情報を取得する場合にとても便利です。特に、列が固定されており、行の情報が変化するデータセットで有効です。

XLOOKUPの基本と使用例

XLOOKUP関数は、Excelの最新バージョンで利用可能な関数で、VLOOKUPやHLOOKUPの欠点を補完する柔軟な検索関数です。縦方向・横方向の両方の検索が可能で、検索範囲と返す範囲を個別に指定できるため、より直感的に使うことができます。

基本的な書式は以下の通りです。

=XLOOKUP(検索値, 検索範囲, 戻り値範囲, [見つからなかった場合の値], [一致モード], [検索モード])

各引数の説明:

  • 検索値:探したい値。
  • 検索範囲:検索する範囲。必ずしも範囲の最初の列または行である必要はありません。
  • 戻り値範囲:対応する値を返す範囲。
  • 見つからなかった場合の値:検索値が見つからなかった場合に返す値(省略可能)。
  • 一致モード:完全一致や近似一致などの指定(省略可能)。
  • 検索モード:検索の方向(前方検索、後方検索など)(省略可能)。

例えば、以下のようなデータテーブルがあるとします。

  商品ID    りんご   みかん   バナナ
  価格      100     80      120
  在庫数    50      30      20
  

このテーブルで、例えば「みかん」の在庫数を取得したい場合、検索範囲として商品名の行、戻り値範囲として在庫数の行を指定します。式は以下のようになります。

=XLOOKUP("みかん", B1:D1, B3:D3, "見つかりません")

この式は、B1:D1の範囲から「みかん」を探し、対応するB3:D3の値を返します。見つからなかった場合は「見つかりません」と表示されます。

XLOOKUPは、VLOOKUPやHLOOKUPと異なり、検索範囲と返す範囲を別々に設定できるため、データの構造に柔軟に対応できます。また、逆方向の検索や複数条件での検索も可能なため、より高度なデータ抽出に適しています。

関数利用時の注意点とヒント

これらの関数を使用する際に気をつけるべきポイントや、知っておくと便利なヒントをいくつかご紹介します。

  • 範囲の指定: VLOOKUPの場合、検索値は必ず範囲の最左列にある必要があります。データが異なる配置の場合、XLOOKUPの利用が推奨されます。
  • 完全一致の推奨: 検索の型をFALSE(または0)に設定して、正確な一致を求めることが一般的です。近似一致が必要な場合は、データが昇順に並んでいるか確認しましょう。
  • エラーハンドリング: XLOOKUPでは、見つからなかった場合の値を指定できます。VLOOKUPやHLOOKUPで同様の機能を実現するには、IFERROR関数を組み合わせる方法があります。
  • 柔軟な検索: XLOOKUPは、検索範囲と返す範囲を個別に指定できるため、テーブルの構造が複雑な場合に非常に有用です。
  • データの整理: 検索系関数を使用する前に、データが正しく整理され、重複や空白がないか確認することが重要です。

これらのヒントを踏まえることで、Excelでのデータ検索や抽出がより効率的に行えます。

また、実際に関数を使用してデータを抽出する際は、まずは簡単な例題から試し、徐々に複雑なデータセットに適用することをお勧めします。例えば、VLOOKUPで簡単な売上データから特定の商品情報を取得し、HLOOKUPで横並びの評価表から該当するスコアを抽出し、XLOOKUPで複数の条件に基づく検索を試すことで、各関数の特性を実感できるでしょう。

さらに、Excelのバージョンによっては、XLOOKUPが使用できない場合もあるため、その際はVLOOKUPやHLOOKUPを上手に組み合わせる工夫が必要です。Excelのヘルプやオンラインリソースを参考にして、自分の環境に最適な方法を見つけてください。

この解説が、Excelでのデータ検索や抽出のスキル向上に役立つことを願っています。初心者の方も、各関数の特性や使い方を理解し、実際の業務や学習に応用してみてください。

最後に、関数の使い方をマスターするには、実際に手を動かして試行錯誤することが重要です。ぜひ、今回の例を参考にして、Excelでの検索作業を効率化していってください。

以上、ExcelのVLOOKUP、HLOOKUP、XLOOKUP関数の詳細な解説でした。さらなる疑問があれば、Excelの公式ドキュメントや関連書籍を参照し、深い理解を目指してください。

このページが、皆さんのExcelスキル向上に貢献できれば幸いです。

コメントは受け付けていません。