ExcelのXLOOKUP関数は基本的にVLOOKUP関数より簡単にデータの抽出ができますが、検索値にワイルドカードを用いる場合にはそのことを引数で指定する必要があります。
- XLOOKUP関数で検索値にワイルドカードを用いる場合、第5引数(一致モード)に「2」を指定する必要があります。
- もちろん第1引数(検索値)にもワイルドカード(アスタリスクなど)を含めておく必要があります。
手順
次の画像では、B~D列の表ががメニューのリストになっています。
そしてF~H列は検索欄です。F3セルに入力された文字列を含む(部分一致)メニューをB列から検索し、対応する値段とカロリーの値をC,D列から抽出するものとします。
G3セルに次のように入力します。
=XLOOKUP("*"&F3&"*",B3:B7,C3:D7,,2)
第1引数(検索値)の最初と最後にアスタリスク(*)をつなげることで部分一致検索(~を含む)のための文字列を生成しています。また、第5引数(検索モード)で「2」(ワイルドカード文字との一致)を指定しています。VLOOKUP関数の場合は特に引数を設定しなくてもワイルドカードが使えますが、XLOOKUP関数の場合はこれが欠かせません。
結果はこうなります。
XLOOKUP関数はVLOOKUP関数より便利で扱いやすくなった部分が多いですが、この点はちょっと面倒になったかもしれません。