Excelで表形式のデータから特定の値を検索する際、従来のVLOOKUP関数やHLOOKUP関数にはいくつかの制約がありました。そこで登場したのがXLOOKUP関数です。XLOOKUP関数は、これらの制約を克服し、より柔軟で強力な検索機能を提供します。この記事では、XLOOKUP関数の基本的な使い方から応用までを、画像例を交えて詳しく解説します。
目次
XLOOKUP関数とは?
XLOOKUP関数は、指定された範囲または配列で値を検索し、最初に見つかった一致に対応する項目を返す関数です。見つからない場合は、代替値を返すこともできます。
基本的な構文
Excel
=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合], [一致モード], [検索モード])
各引数の意味は以下の通りです。
- 検索値(必須): 検索する値を指定します。画像例では、セルB2の「品番号」が検索値です。
- 検索範囲(必須): 検索を行う範囲を指定します。画像例では、D3:D7の「商品番号」の範囲です。
- 戻り範囲(必須): 結果として返す値が含まれる範囲を指定します。画像例では、E3:E7の「商品名」の範囲です。
- 見つからない場合(省略可能): 検索値が見つからない場合に返す値を指定します。省略すると
#N/A
エラーが返されます。画像例では「該当なし」が指定されています。
- 一致モード(省略可能): 一致の種類を指定します。
- 0(既定値):完全一致。
- -1:完全一致。見つからない場合は、次に小さい項目を返します。
- 1:完全一致。見つからない場合は、次に大きい項目を返します。
- 2:ワイルドカード文字(
*
、?
、~
)を使用した部分一致。
- 検索モード(省略可能): 検索の方向を指定します。
- 1(既定値):先頭から末尾へ検索。
- -1:末尾から先頭へ検索。
- 2:昇順で並べ替えられた範囲を使用したバイナリ検索。
- -2:降順で並べ替えられた範囲を使用したバイナリ検索。
<Excelサンプルデータダウンロード>
Excel XLOOKUP関数:表引き検索の決定版!VLOOKUP/HLOOKUPを超える柔軟性
画像例の具体的な解説
画像例では、セルB3に以下の数式が入力されています。
Excel
=XLOOKUP(B2,D3:D7,E3:E7,"該当なし")
この数式は、以下の処理を行っています。
- セルB2に入力されている「物品番号」を検索値として使用します。
- D3:D7の範囲(物品リストの「物品番号」欄)を検索範囲として検索を行います。
- E3:E7の範囲(物品リストの「商品名」欄)から、対応する物品名称を返します。
- 検索値が見つからない場合は、「該当なし」と表示します。
- 一致モードと検索モードは省略されているため、既定値の「完全一致」と「先頭から末尾へ検索」が適用されます。
Excelのサンプルデータ【ダウンロード】
以下は、上記画像のExcelデータですので、ダウンロードして練習などに使用してください。
Excel-g713-1.xlsx (ダウンロード)
XLOOKUP関数の利点
- 柔軟な検索: 検索方向(上から下、下から上)や一致モード(完全一致、近似一致、ワイルドカード一致)を自由に指定できます。
- エラー処理が簡単:
見つからない場合
引数で、検索値が見つからない場合のエラー表示を簡単に制御できます。IFERROR関数と組み合わせる必要がありません。
- 戻り範囲が検索範囲と隣接していなくても良い: VLOOKUP関数のように、戻り範囲が検索範囲の右側にある必要はありません。
- 近似一致検索がより直感的: 近似一致検索で、次に小さい項目または次に大きい項目を明確に指定できます。
- バイナリ検索による高速化: 大規模なデータに対して、バイナリ検索を使用することで高速に検索できます。
XLOOKUP関数とVLOOKUP/HLOOKUP関数の比較
特徴 | XLOOKUP関数 | VLOOKUP関数 | HLOOKUP関数 |
---|
検索方向 | 縦方向、横方向、双方向 | 縦方向(左から右) | 横方向(上から下) |
戻り範囲の位置 | 検索範囲と隣接している必要なし | 検索範囲の右側にある必要あり | 検索範囲の下側にある必要あり |
近似一致 | 次に小さい/大きい項目を指定 | 検索範囲の並べ替えが必要、挙動がやや複雑 | 検索範囲の並べ替えが必要、挙動がやや複雑 |
エラー処理 | 見つからない場合 引数で簡単に指定 | IFERROR関数との組み合わせが必要 | IFERROR関数との組み合わせが必要 |
検索モード | 先頭から、末尾から、バイナリ検索 | 先頭からのみ | 先頭からのみ |
XLOOKUP関数が使えるExcelのバージョン
XLOOKUP関数は、すべてのExcelバージョンで使えるわけではありません。以下のバージョンで利用可能です。
- Microsoft 365: Microsoft 365のExcelでは、常に最新の機能が提供されるため、XLOOKUP関数を使用できます。
- Excel 2021以降の永続ライセンス版: Excel 2021以降のバージョン(Excel 2021、Excel 2024など)の永続ライセンス版でもXLOOKUP関数が利用可能です。
- Excel Online (Web版): Webブラウザで使用するExcel OnlineでもXLOOKUP関数を使用できます。
重要な注意点:
- Excel 2019以前のバージョンではXLOOKUP関数は使用できません。 古いバージョンのExcelを使用している場合は、VLOOKUP関数やHLOOKUP関数を使用するか、Excelのバージョンアップを検討する必要があります。
- 他のユーザーとファイルを共有する場合: ファイルを共有する相手がExcel 2019以前のバージョンを使用している場合、XLOOKUP関数を使った数式は正常に機能しません。互換性を考慮する必要がある場合は、VLOOKUP関数などを使用するか、ファイルをPDFなどで共有することを検討しましょう。
Excelのバージョン確認方法:
使用しているExcelのバージョンを確認するには、以下の手順を実行します。
- Excelを起動します。
- 「ファイル」タブをクリックします。
- 左側のメニューから「アカウント」または「ヘルプ」をクリックします。
- 「Excel のバージョン情報」または「バージョン情報」をクリックすると、詳細なバージョン情報が表示されます。
XLOOKUP関数の使用を検討する際のポイント
- 最新バージョンのExcelを使用しているか?: XLOOKUP関数を使用できる環境かを確認しましょう。
- ファイルの共有相手の環境は?: ファイルを共有する相手が古いバージョンのExcelを使用している場合は、互換性に注意が必要です。
- 複雑な検索が必要か?: XLOOKUP関数はVLOOKUP関数よりも多機能ですが、簡単な検索であればVLOOKUP関数でも十分な場合があります。
まとめ
XLOOKUP関数は、従来のVLOOKUP関数やHLOOKUP関数の欠点を克服し、より強力で使いやすい検索機能を提供します。特に、柔軟な検索方向、簡単なエラー処理、直感的な近似一致検索は大きな利点です。ただし、使用できるExcelのバージョンに制限があるため、環境を確認してから使用するようにしましょう。最新バージョンのExcelまたはMicrosoft 365をお使いの場合は、積極的にXLOOKUP関数を活用することをお勧めします。
補足説明
上記では、XLOOKUP関数の構文、引数の説明、一致モードと検索モードの説明、具体的な数式例などを記載しました。特に以下の点が重要です。
見つからない場合
引数でエラー処理を行っている点。
一致モード
と検索モード
で検索方法を細かく制御できる点。
- VLOOKUP関数と比較して、XLOOKUP関数がエラー対策を単独で行える点が強調されている点。
- 画像下部の説明で、VLOOKUPではIFERROR関数と組み合わせる必要があったエラー処理が、XLOOKUPでは単独でできることが強調されています。
- 一致モードの「2 ワイルドカード文字との一致」。
- 検索モード。
あわせて読みたい
101-00|VLOOKUP進化版!XLOOKUPの使い方!データ抽出方法のまとめ
10101|XLOOKUPのデータ抽出方法 【Excel】練習用サンプルデータ(例題)①をダウンロードする Excel練習用サンプルデータ|ダウンロード ↓「手書き」追記説明 【Excel】…
あわせて読みたい
101-01|VLOOKUP進化版!「XLOOKUP」の使い方!柔軟な「データ検索」を行うVLOOKUPに代わる新しい関数【…
ExcelのXLOOKUP関数は、柔軟な検索と取得を行う新しい関数です。この記事では、XLOOKUP関数の使い方やポイントについて詳しく解説します。 関数 関数の説明 XLOOKUP関数…
あわせて読みたい
101-02|VLOOKUP進化版!「XLOOKUP」の使い方!「複数条件」によりExcelのデータ検索をさらに進化させる…
Excelの新しい関数であるXLOOKUPは、複数条件でのデータ検索を行うための強力なツールです。この記事では、XLOOKUP関数を使って複数条件での検索を行う方法を詳しく解説…
あわせて読みたい
101-03|VLOOKUP進化版!「XLOOKUP」の使い方!「複数条件」によるデータ抽出・検索【Excelサンプルデー…
XLOOKUP!「複数条件」によるデータ抽出・検索【Excelサンプルデータ(例題)|無料ダウンロード】 【Excel】練習用サンプルデータ(例題)①をダウンロードする Excel練…
あわせて読みたい
101-04|VLOOKUP進化版!「XLOOKUP」の使い方!「複数条件」によりデータ抽出し結果を「別シート」に表…
XLOOKUP!「別シート」からデータ抽出・検索【Excelサンプルデータ(例題)|無料ダウンロード】 【Excel】練習用サンプルデータ(例題)①をダウンロードする Excel練習…
あわせて読みたい
101-05|VLOOKUP進化版!XLOOKUPの使い方!OR条件によるデータ抽出・検索【Excelサンプルデータ(例題)…
XLOOKUP!「OR」条件によるデータ抽出・検索【Excelサンプルデータ(例題)|無料ダウンロード】 【Excel】練習用サンプルデータ(例題)①をダウンロードする Excel練習…
あわせて読みたい
s022|検索値に該当するデータのうち特定の項目(列) だけ抽出する【XLOOKUP関数、VLOOKUP関数】|Excel…
複数列の表から検索値に一致するデータを指定の列から抽出するなら、XLOOKUP関数やVLOOKUP関数を使う。 目的 指定列から検索抽出 使用する関数 Microsoft2021/365 :XLO…
あわせて読みたい
s023|検索値に該当するデータのうち連続する列を抽出する方法【XLOOKUP関数、VLOOKUP関数、COLUMN関数…
表から検索値に一致するデータを2列~4列など連続する列で抽出したいとき、いちいち数式で抽出する列を指定せずに求めたいときは、XLOOKUP関数なら引数[戻り範囲]にす…
あわせて読みたい
s025|検索値に該当するデータのうち離れた複数列を抽出する方法【XLOOKUP関数、VLOOKUP関数、MATCH関数…
複数列の表から検索値に一致するデータを、2列目、5列目、7列目…などの離れた複数の列を抽出するときは、XLOOKUP/VLOOKUP関数を使って数式を作成し、その数式をコピー…
あわせて読みたい
s027|どの列を検索対象にしても抽出する方法【FILTER関数、XLOOKUP関数、INDEX関数、SUMPRODUCT関数、R…
検索値に電話番号を入力しても、名前を入力しても、該当するデータを表から抽出したい。そんな時は、検索値があるデータの列を抽出してから、検索値と一致する行のデー…
あわせて読みたい
s028|クロス集計表からデータを抽出する方法【XLOOKUP関数、INDEX関数、MATCH関数】|Excel関数による…
クロス集計表から、指定の行・列の項目が交差する位置にあるデータを抽出するには、XLOOKUP関数なら引数[戻り範囲]にもう1つXLOOKUP関数を組み合わせるだけで可能。 …
あわせて読みたい
s029|クロス表の見出しとデータを入れ替えた別のクロス表を作成【XLOOKUP関数、TEXT関数、IFNA関数、IN…
クロス表のデータを見出しにした別のクロス表を作成したいときは、XLOOKUP関数の引数[検索範囲]にXLOOKUP関数を組み合わせた数式を作成しよう。 目的 クロス表検索抽…
あわせて読みたい
s032|日付を検索して該当する期間のデータを抽出する方法【XLOOKUP関数、VLOOKUP関数】|Excel関数によ…
期間ごとのデータが入力された表から、指定の日付を検索値にして該当データを抽出するなど、完全一致がない表から検索抽出するには、XLOOKUP関数やVLOOKUP関数で抽出す…
あわせて読みたい
s033|検索値を含むワードを検索して該当データを抽出する方法【XLOOKUP関数、VLOOKUP関数】|Excel関数…
検索値が検索対象の列のデータと完全一致ではなく、部分的に一致する場合は、XLOOKUP関数やVLOOKUP関数の引数の[検索値]にワイルドカードを使って抽出しよう。 目的 …
あわせて読みたい
s034|検索値を含むワードを検索して該当データを抽出する方法【XLOOKUP関数、LOOKUP関数】|Excel関数…
検索値の一部しかない検索対象のデータから、該当データを抽出するなら、XLOOKUP/LOOKUP関数の引数[検索範囲]にFIND関数を使って数式を作成しましょう。 目的 部分一…
あわせて読みたい
s035|複数ある検索値の全てに該当するデータを抽出する方法【XLOOKUP関数、VLOOKUP関数】|Excel関数に…
XLOOKUP/VLOOKUP関数は1つの検索値でしか抽出できないが、複数ある検索値でも1つの文字列にしてしまえば抽出できる。名前は同じでも電話番号が違う同姓同名から該当す…
あわせて読みたい
S036|複数シートから検索して抽出【XLOOKUP関数、VLOOKUP関数、VSTACK関数】|Excel関数によるデータ抽…
期間や年代など完全一致でない複数の検索値で該当データを抽出する場合は、1つの文字列にできない。このような場合はXLOOKUP/LOOKUP関数の引数[検索範囲]に条件式を…
あわせて読みたい
S037|複数シートから検索して抽出【XLOOKUP関数、IFNA関数、VLOOKUP関数】|Excel関数によるデータ抽出…
XLOOKUP関数とINDEX関数はセル参照を抽出できるため、セルに貼り付けた写真や図を検索値で抽出することができる。ただし、数式は名前の参照範囲に入力すること。 目的 …
あわせて読みたい
S038|複数シートからシートを選んで検索抽出する【XLOOKUP関数、VLOOKUP関数、INDIRECT関数】|Excel関…
複数の表/シートから検索して抽出するなら、VSTACK関数で1つの配列にしてから、XLOOKUP/VLOOKUP関数を使おう。大量のシートでも一瞬で検索値に該当するデータを探し出…
あわせて読みたい
S039|シート名と検索値を入力して該当データを抽出【XLOOKUP関数、VLOOKUP関数、INDIRECT関数】|Excel…
Excel2021/2019/2016では、クリップボードやPower Queryで1つの表にするしかない。しかし、もしデータの変更に対応したい等の場合は、検索値に該当するデータが1つ目の…
あわせて読みたい
S045|複数ブックからブック名と検索値に該当するデータを抽出【XLOOKUP関数、VLOOKUP関数、SWITCH関数…
抽出先のブックだけを開き、ブック名と検索値で検索抽出するなら、SWITCH関数(Excel2016ではCHOOSE関数)で抽出元のブックのセル範囲を切り替えて抽出しよう。 目的 複…
あわせて読みたい
x001|Excelで「XLOOKUP関数」を使用してデータを検索する方法
ExcelのXLOOKUP関数は、指定したキーを検索し、対応する値を返すための強力なツールです。従来のVLOOKUP関数やHLOOKUP関数に代わるもので、より柔軟で簡単に使用できる…
あわせて読みたい
g701|ExcelでVLOOKUP、HLOOKUP、XLOOKUP関数を使用してデータを検索する方法
Excelには、特定の条件に基づいてデータを検索するためのさまざまな関数が用意されています。中でも、VLOOKUP、HLOOKUP、およびXLOOKUP関数は非常に便利です。このブロ…
あわせて読みたい
g713|Excel XLOOKUP関数:表引き検索の決定版!VLOOKUP/HLOOKUPを超える柔軟性
Excelで表形式のデータから特定の値を検索する際、従来のVLOOKUP関数やHLOOKUP関数にはいくつかの制約がありました。そこで登場したのがXLOOKUP関数です。XLOOKUP関数は…
あわせて読みたい
g714|Excel XLOOKUP関数:スピルで複数データの一括取得!「縦横検索」表引き検索をさらに効率化
ExcelのXLOOKUP関数は、従来のVLOOKUPやHLOOKUPを置き換える強力な検索関数です。特に、XLOOKUPと組み合わせて使用することで真価を発揮する「スピル」機能は、複数のデ…
あわせて読みたい
g715|Excel XLOOKUP関数:逆引き検索でデータ抽出を自由自在に!VLOOKUPの制約を克服
Excelでデータ検索を行う際、従来のVLOOKUP関数には「検索値がある列の左側にある列から値を返せない」という制約がありました。しかし、XLOOKUP関数はこの制約を克服し…
あわせて読みたい
g716|Excel XLOOKUP関数:入れ子で「縦横検索」2次元データ検索を自由自在に!INDEX/MATCHを超える柔軟性
Excelで2次元の表(行と列の見出しを持つ表)からデータを検索する場合、従来のINDEX関数とMATCH関数の組み合わせがよく使われていました。しかし、XLOOKUP関数を入れ子…
あわせて読みたい
g717|Excel XLOOKUP関数:複数条件でデータ検索をスマートに!連結でVLOOKUPの弱点を克服
Excelでデータ検索を行う際、複数の条件を組み合わせて検索したい場面はよくあります。従来のVLOOKUP関数では、このような複数条件検索を行うには、作業列を追加するな…
あわせて読みたい
g718|Excel XLOOKUP関数:データ追加に完全対応!列全体指定とテーブルで参照範囲を自動拡張
Excelでデータを管理する際、データが頻繁に追加されることはよくあります。従来のVLOOKUP関数では、参照範囲を固定で指定していたため、データ追加のたびに数式を修正…
あわせて読みたい
g719|Excel XLOOKUP関数:横方向のデータ検索も自由自在!HLOOKUPを超える柔軟性
Excelで表形式のデータから横方向に値を検索する場合、従来のHLOOKUP関数がよく使われていました。しかし、XLOOKUP関数は縦方向だけでなく横方向の検索も行え、HLOOKUP…
あわせて読みたい
g720|Excel XLOOKUP関数:「○以上△未満」の範囲検索をスマートに!VLOOKUPの弱点を克服
はじめに Excelでデータを扱う際、「○以上△未満」のような範囲条件でデータを検索したい場面はよくあります。例えば、得点に応じて評価を割り当てたり、売上額に応じて…
あわせて読みたい
a1|Excel XLOOKUP関数で複数条件検索をマスター!具体例とVLOOKUP比較
ExcelのXLOOKUP関数は、VLOOKUP関数よりも強力で柔軟な検索が可能です。この記事では、XLOOKUP関数を使って複数条件でデータを検索する方法を、具体的な例を交えながら…
あわせて読みたい
a2|Excel XLOOKUP関数で部分一致検索を極める!ワイルドカードの活用とVLOOKUPとの比較
ExcelのXLOOKUP関数は、VLOOKUP関数に代わる強力な検索ツールです。特に、ワイルドカードを利用した部分一致検索は、データ分析の幅を広げます。この記事では、XLOOKUP…
あわせて読みたい
a3|Excel XLOOKUP関数「縦横検索」とVLOOKUPからの進化
ExcelのXLOOKUP関数は、VLOOKUP関数の課題を克服し、より柔軟なデータ検索を可能にする強力なツールです。この記事では、XLOOKUP関数の基本的な使い方から、VLOOKUP関数…
コメント