
XLOOKUPとは大量データから特定の値を検索し、対応するデータを取得するための関数だ。使い方はVLOOKUP関数と同様だが、左右どちらの方向にも検索可能で、列の増減に影響されないといった便利な機能がある。
目次
XLOOKUP関数は、エクセルでのデータ検索を劇的に効率化する新しい関数だ。本記事では、VLOOKUPとの違いを詳しく解説し、XLOOKUPの基本的な使い方、具体的な活用事例、そして注意点について詳しく紹介する。
この記事を読めば、XLOOKUPを使いこなすための知識を深められるだろう。
XLOOKUP関数とは
XLOOKUP関数について、あまり知らないという人も多いのではないだろうか。ここでは、XLOOKUPがどのような関数なのかを具体的に解説していこう。
■どのようなときに使うのか
XLOOKUPは、大量データから特定の値を検索し、対応するデータを取得するための関数だ。例えば、以下のようなシチュエーションで役立つ。
- 顧客管理: 顧客IDから名前や連絡先を取得したい場合
- 在庫管理: 商品コードから在庫数や仕入れ価格を取得したい場合
- 財務分析: 特定の日付に対応する売上データを取り出したい場合
これらのタスクは従来、VLOOKUP関数を使っていたが、XLOOKUPはその制限を解消する。特に、データ範囲が広がった場合や、左右どちらの方向にも検索が必要な場合に強力だ。
■基本的な式の解説
XLOOKUP関数の構文は以下の通り
=XLOOKUP(検索値, 検索範囲, 戻り値範囲, [見つからない場合の値], [一致モード], [検索モード])
- 検索値: 検索したいデータのキー(例: 顧客IDや商品コード)
- 検索範囲: 検索値が存在するセル範囲
- 戻り値範囲: 検索値に対応するデータを含むセル範囲
- 見つからない場合の値: 検索値が見つからなかったときに返す値(省略可)
- 一致モード: 完全一致や近似一致、部分一致を指定するオプション(省略可)
- 検索モード: 昇順・降順での検索や逆方向検索が可能(省略可)
以下のデータを使った具体例を示そう。
「A002」の価格を取得する場合の式は下記のとおりだ。
=XLOOKUP(“A002”, A2:A6, C2:C6)
結果は100となる。このように、XLOOKUPでは直感的な設定が可能だ。
VLOOKUP関数と比較したXLOOKUP関数の特徴
データ検索の関数といえばVLOOKUP関数を思い浮かべる人も多いだろう。
XLOOKUP関数はVLOOKUP関数よりも使いやすい機能がある。ここではVLOOKUP関数と比較したXLOOKUP関数の特徴を紹介しよう。
■左右どちらの方向にも検索可能
VLOOKUPは左から右への検索しかできなかった。一方でXLOOKUPは、戻り値範囲を自由に設定できるため、右から左への検索にも対応する。たとえば、商品名から商品コードを検索する場合、以下のように設定できる:
=XLOOKUP(“ノート”, B2:B6, A2:A6)
結果は「A001」となる。
■列の増減の影響を受けない
VLOOKUPでは、戻り値を取得する列番号を指定する必要があったため、列の追加や削除で設定が崩れることがあった。XLOOKUPでは範囲を直接指定するため、列の構造が変わっても影響を受けない。そのため、メンテナンスが容易になっている。
■複数列のデータ取得が簡単にできる
XLOOKUPは、スピル機能を活用することで複数列のデータを一度に取得可能だ。例えば、商品コード「A001」に該当する商品名と価格を同時に取得する:
=XLOOKUP(“A001”, A2:A6, B2:C6)
結果として「ノート」と「500」がセルにスピル(展開)される。この機能によって関連する複数の情報を一度に処理でき便利だ。
■エラー時の処理が簡単
エラーが発生した場合に返す値を設定することで、#N/Aエラーを回避可能だ。例えば、存在しない商品コード「A006」を検索した場合:
=XLOOKUP(“A006”, A2:A6, B2:B6, “該当なし”)
結果は「該当なし」となる。
XLOOKUP関数の活用事例
XLOOKUP関数を実際に活用する事例を見ながら使い方を確認していこう。
■顧客データベースから特定の情報を抽出
顧客データベースから特定の情報を抽出
以下のような顧客データがある場合:
顧客ID「102」の名前と電話番号を取得する場合:
=XLOOKUP(102, A2:A4, B2:C4)
結果は「山田 花子」と「080-8765-4321」が返される。
■在庫管理で商品の情報を紐付け
在庫リストと商品の価格表を別々のワークシートに管理している場合、以下のようにデータを紐付けられる。
在庫リストに価格を追加するには:
=XLOOKUP(A2, ‘価格表’!A2:A3, ‘価格表’!B2:B3)
このようにして、在庫データと価格情報を簡単に統合できる。
XLOOKUP関数を使う場合の注意点
非常に便利な関数であるXLOOKUP関数だが、使う場合にはいくつかの注意点がある。以下のポイントを確認して使うようにしよう。
■XLOOKUP関数が利用できるエクセルのバージョン
XLOOKUPはOffice 365やExcel 2019以降でのみ使用可能だ。古いバージョンでは、IFERRORやINDEX/MATCHを組み合わせた代替策が必要となる。
■検索値が重複している場合の挙動
検索値が重複している場合、XLOOKUPは最初に見つかった値を返す。このため、ユニークキーを使用することが望ましい。同じ商品コードが複数行に存在する場合、意図しない結果となる可能性がある。
■検索モードによる結果の違い
検索モード(例: 完全一致、近似値、一方向検索)を誤ると、期待通りの結果が得られないことがある。特に、データが昇順や降順に並んでいない場合は完全一致モードを使用するべきだ。
まとめ
XLOOKUPは、VLOOKUPの弱点を補完し、より柔軟で効率的なデータ検索を可能にする新しい関数だ。特に左右方向の自由な検索や列構造の変更に強く、スピル機能を活用した複数列の取得が簡単である点が大きなメリットだ。実務での活用方法を押さえ、作業効率を大幅に向上させてほしい。
この強力なツールを使いこなせば、エクセル作業が格段に楽になるだろう。本記事の内容を以下で簡単におさらいしておこう。
〇XLOOKUPとは
大量データから特定の値を検索し、対応するデータを取得するための関数。
顧客管理や在庫管理、財務分析など、データ検索を必要とする場面で活躍。
VLOOKUP関数の制限(方向や列の影響)を解消した便利な機能。
基本的な構文
=XLOOKUP(検索値, 検索範囲, 戻り値範囲, [見つからない場合の値], [一致モード], [検索モード])
〇XLOOKUPの特徴
・左右どちらの方向にも検索可能
・列の増減に影響されない
・複数列のデータ取得が可能
・エラー処理が簡単
〇注意点
・対応バージョン:Office 365またはExcel 2019以降で利用可能。
・検索値の重複:最初に見つかった値を返すため、ユニークキーを推奨。
・検索モードの設定:データ並びが昇順・降順でない場合は完全一致を使用。
構成/編集部