ExcelのXLOOKUP関数を使って、ワイルドカードを活用した部分一致検索ができることをご存じですか?「\*」や「?」を使うことで、文字列の一部だけを指定しても、目的のデータをしっかりと引き出すことができます。今回は、初心者の方にもわかりやすく、実際の例を交えて解説します。
ワイルドカードとは?
まず、ワイルドカードについて簡単に説明します。ワイルドカードは、文字列の一部を指定するための記号です。Excelでは、以下のように使います
- *(アスタリスク)任意の文字列を表します。
- ?(クエスチョンマーク)任意の1文字を表します。
例えば、「*apple*」と指定すると、「apple」や「green apple」など、「apple」を含むすべての文字列に一致します。
XLOOKUP関数とは?
次に、XLOOKUP関数について簡単に説明します。XLOOKUPは、指定した範囲から検索値を探し、対応する値を返す関数です。従来のVLOOKUP関数よりも柔軟で、使いやすくなっています。
基本的な構文は以下の通りです
=XLOOKUP(検索値, 検索範囲, 戻り値範囲, , , )
ワイルドカードを使ったXLOOKUPの設定方法
XLOOKUPでワイルドカードを使用するには、\の引数に「2」を指定します。これにより、ワイルドカードを有効にすることができます。
例えば、以下のようなデータがあるとします
| 商品コード | 商品名 | 価格 |
|---|---|---|
| 001 | りんご | 100円 |
| 002 | みかん | 150円 |
| 003 | バナナ | 120円 |
| 004 | グレープ | 200円 |
この中から、「みかん」の価格を検索したい場合、以下のように入力します
=XLOOKUP("みかん", B2:B5, C2:C5, "見つかりません", 2)
これで、「みかん」の価格である「150円」が返されます。
部分一致検索を行う方法
もし、「みかん」を含む商品を検索したい場合、ワイルドカードを使って部分一致検索を行います。以下のように入力します
=XLOOKUP("*みかん*", B2:B5, C2:C5, "見つかりません", 2)
これで、「みかん」を含む商品が検索され、対応する価格が返されます。
複数の一致するデータを取得する方法
XLOOKUPはデフォルトで最初に一致したデータのみを返しますが、複数の一致するデータを取得したい場合は、FILTER関数を併用します。例えば、「みかん」を含むすべての商品とその価格を取得するには、以下のように入力します
=FILTER(B2:C5, ISNUMBER(SEARCH("みかん", B2:B5)), "見つかりません")
これで、「みかん」を含むすべての商品とその価格が返されます。
よくある質問や疑問
Q1: ワイルドカードは大文字と小文字を区別しますか?
いいえ、ワイルドカードは大文字と小文字を区別しません。例えば、「みかん」と「ミカン」は同じように検索されます。
Q2: 数字にもワイルドカードを使えますか?
はい、数字にもワイルドカードを使用できます。例えば、「*100*」と指定すると、「100円」や「200100円」など、「100」を含むすべての数字に一致します。
Q3: ワイルドカードを使う際の注意点はありますか?
ワイルドカードを使用する際は、検索値や検索範囲に余分なスペースが含まれていないか確認してください。余分なスペースがあると、一致しない場合があります。
まとめ
XLOOKUP関数とワイルドカードを組み合わせることで、Excelでの検索がより柔軟になり、効率的にデータを取得することができます。ぜひ、実際のデータで試してみてください。



コメント