はじめに
Excelでデータ検索を行う際、複数の条件を組み合わせて検索したい場面はよくあります。従来のVLOOKUP関数では、このような複数条件検索を行うには、作業列を追加するなどの工夫が必要でした。しかし、XLOOKUP関数では、連結演算子「&」を使うことで、複数の条件を簡単に組み合わせて検索を行うことができます。この記事では、XLOOKUP関数を使った複数条件検索に焦点を当て、その利点や具体的な使用方法を解説します。
XLOOKUP関数とは?(復習)
XLOOKUP関数は、指定された範囲または配列で値を検索し、最初に見つかった一致に対応する項目を返す関数です。
基本的な構文(復習)
Excel
=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合], [一致モード], [検索モード])
各引数の意味は以下の通りです。
- 検索値(必須): 検索する値を指定します。
- 検索範囲(必須): 検索を行う範囲を指定します。
- 戻り範囲(必須): 結果として返す値が含まれる範囲を指定します。
- 見つからない場合(省略可能): 検索値が見つからない場合に返す値を指定します。
- 一致モード(省略可能):
- 0(既定値):完全一致。
- -1:完全一致。見つからない場合は、次に小さい項目を返します。
- 1:完全一致。見つからない場合は、次に大きい項目を返します。
- 2:ワイルドカード文字(
*
、?
、~
)を使用した部分一致。
- 検索モード(省略可能):
- 1(既定値):先頭から末尾へ検索。
- -1:末尾から先頭へ検索。
- 2:昇順で並べ替えられた範囲を使用したバイナリ検索。
- -2:降順で並べ替えられた範囲を使用したバイナリ検索。
<Excelサンプルデータダウンロード>
Excel XLOOKUP関数:複数条件でデータ検索をスマートに!連結でVLOOKUPの弱点を克服
連結演算子「&」を使った複数条件検索
XLOOKUP関数では、検索値と検索範囲の両方で連結演算子「&」を使用することで、複数の条件を組み合わせて検索を行うことができます。画像例を基に解説します。
画像例の解説
画像では、物品一覧(E3:G7)から、分類と品番の両方が一致する商品名を検索しています。セルB4に入力されている数式は以下の通りです。
Excel
=XLOOKUP(B2&B3,E3:E7&F3:F7,G3:G7,"該当なし")
この数式を分解して解説します。
B2&B3
: 検索値として、セルB2の「分類」とセルB3の「品番」を連結しています。例では「B103」となります。E3:E7&F3:F7
: 検索範囲として、商品リストの分類列(E3:E7)と品番列(F3:F7)を連結しています。これにより、「B101」「B102」「B103」…といった連結された文字列の範囲が作成されます。G3:G7
: 戻り範囲(物品一覧の商品名列)を指定しています。"該当なし"
: 見つからない場合の値を指定しています。
数式の動作
- 検索値
B2&B3
(例:「B103」)が作成されます。 - 検索範囲
E3:E7&F3:F7
(例:「B101」「B102」「B103」…)が作成されます。 - XLOOKUP関数は、作成された検索値が検索範囲内で完全に一致するものを探します。
- 一致するものが見つかった場合、対応する商品名が返されます。見つからない場合は、「該当なし」と表示されます。
Excelのサンプルデータ【ダウンロード】
以下は、上記画像のExcelデータですので、ダウンロードして練習などに使用してください。
Excel-g717-1.xlsx (ダウンロード)
XLOOKUPで複数条件検索を行うメリット
- VLOOKUPよりもシンプル: VLOOKUPで複数条件検索を行うには、作業列を追加するか、配列数式を使用する必要がありましたが、XLOOKUPではよりシンプルな数式で実現できます。
- 可読性の向上: 数式がシンプルになることで、数式の意味が理解しやすくなります。
- 柔軟性: 検索する条件の数を増やす場合でも、連結演算子「&」を追加するだけで簡単に対応できます。
連結時の注意点
画像下部の「Memo」にも記載されている通り、連結した文字列が重複する可能性がある場合は、区切り文字を挟むことをお勧めします。例えば、「BX」「101」と「BX1」「01」を連結すると、どちらも「BX101」になってしまい区別できません。このような場合は、「-」などの区切り文字を挟んで「BX-101」「BX1-01」のように連結することで、正しく検索を行うことができます。
まとめ
XLOOKUP関数と連結演算子「&」を組み合わせることで、複数の条件を簡単に組み合わせて検索を行うことができます。これは、VLOOKUPの弱点を克服する強力な方法です。複数条件で検索を行いたい場合は、ぜひXLOOKUPと連結演算子を活用してみてください。
この解説で、XLOOKUP関数を使った複数条件検索についてより深く理解できたかと思います。この情報を活用し、Excelでのデータ分析をより効率的に行いましょう。
コメント