Excelでデータを検索する際に便利なVLOOKUP関数ですが、通常は完全一致で使用するケースが多いです。
しかし、部分一致検索(ワイルドカード)を利用すると、完全一致では見つからないデータも柔軟に検索できるようになります。
例えば、商品名の一部だけを入力して商品情報を検索したり、顧客名の一部から該当するデータを抽出したりする場合に、この方法が非常に役立ちます。
この記事では、ExcelのVLOOKUP関数で部分一致検索を行う方法を、初心者にも分かりやすく解説します。
ワイルドカード(*や?)を使った具体的な設定方法も紹介しますので、データ検索を効率化したい方はぜひ参考にしてみてください。
VLOOKUP関数とは?
VLOOKUP関数の基本的な構文は以下の通りです。
部分一致検索を実現する方法
VLOOKUP関数で部分一致検索を行うには、ワイルドカード(* または ?)を活用します。
これにより、検索条件に応じた柔軟な検索が可能です。
| ワイルドカード | 意味 |
|---|---|
* | 任意の文字列を表します。 |
? | 任意の1文字を表します。 |
例えば、「商品A」や「商品B」などを検索する場合、以下のように設定します。
=VLOOKUP("*商品*", 範囲, 列番号, FALSE)
この例では、セル内に「商品」という文字列を含むデータを検索します。
使用例
以下のようなデータがあるとします。

E3セルに入力された値で「カテゴリーと商品名」を検索をする場合は、以下のように入力します。
=VLOOKUP("*" & E3 & "*",B3:C7, 2, FALSE)

複数一致する場合
検索条件に複数一致する場合は、最初に一致した結果のみが表示されます。
例えば、検索ワードに「家電」と入力すると、最初に一致する「(家電)テレビ」の価格「50,000」が表示されます。

よくある質問 (FAQ)
Q1: VLOOKUP関数で部分一致検索を行うにはどうすればいいですか?
A1: 部分一致検索を行うには、VLOOKUP関数にワイルドカード(*)を使います。例えば、検索したいキーワードの前後に*を追加することで、そのキーワードを含むすべてのデータを検索できます。
=VLOOKUP("*" & 検索ワード & "*", 範囲, 列番号, FALSE)
Q2: 部分一致で複数の一致する結果がある場合、どうなりますか?
A2: VLOOKUP関数は最初に一致した結果のみを返します。複数の一致する結果があっても、最初に見つかったものだけが表示されます。
Q3: 部分一致検索は、大文字と小文字を区別しますか?
A3: いいえ、VLOOKUP関数は大文字と小文字を区別しません。
Q4: 部分一致検索に失敗する場合、どこが間違っているのでしょうか?
A4: 部分一致検索がうまくいかない場合、次の点を確認してください。
- ワイルドカード
*が正しく使用されているか - 検索範囲に誤ったデータが含まれていないか
- VLOOKUP関数で使用する列番号が正しいか
Q5: 検索ワードに複数のキーワードを含む場合、どう検索すれば良いですか?
A5: 複数のキーワードを含む場合、*ワイルドカードを使って各キーワードを部分一致で検索できます。例えば、"家電" と "テレビ" の両方を検索したい場合、次のような式を使います。
=VLOOKUP("*家電*" & "*テレビ*", 範囲, 列番号, FALSE)
まとめ
ExcelのVLOOKUP関数で部分一致検索を利用すると、データ範囲内の特定のキーワードを柔軟に検索することができます。
ワイルドカード(*)を活用することで、検索ワードの一部だけを指定してデータを検索することが可能になり、商品名や顧客名などのデータをより効率的に抽出できます。
ただし、VLOOKUP関数は最初に一致した結果のみを返す仕様のため、同じ条件に一致するデータが複数ある場合は注意が必要です。
また、検索対象に空白や特殊文字が含まれている場合には、意図しない検索結果になることもあります。そのため、検索範囲や検索条件を事前に確認しておくことが大切です。
VLOOKUPの部分一致検索を活用することで、Excelでのデータ検索やデータ管理、分析作業をより効率的に行うことができます。
ぜひこの記事で紹介した方法を実践して、Excelのデータ検索機能をさらに活用してみてください。

