目標:VLOOKUP関数でワイルドカード「?」を使い、文字数を指定しながら前方一致、後方一致、部分一致検索をできるようになる!
VLOOKUP関数を使って何かを検索する時、ワイルドカードというものを使うと、あいまいな検索をすることができるようになりますが、今度は文字数を指定しつつあいまいな検索をしていきたいと思います!
※文字数を指定しないワイルドカードの使い方はこちら!
参考ページ:エクセル VLOOKUP関数のワイルドカード「*」で部分一致検索!
前のページでは「*」(アスタリスク)を使ってどんな文字でもOK、何文字でもOKという検索をしましたが、「?」を使うと、文字数を指定して検索することができるようになります。ちなみに「?」一文字につき一文字として設定することができます!
では実際にどのように使えば良いのかを見ていきましょう!
エクセルのVLOOKUP関数でワイルドカード「?」を使い文字数を指定しつつ前方一致検索を行う!
VLOOKUP関数でワイルドカードを使い、文字数を指定しながら前方一致検索をしたい場合を見ていきたいと思います。
簡単に言うと「パン○○○」のように最初の文字は「パン」で始まるもので、その後ろの文字数は3文字のものを検索していこうと思います。
この時のやり方としては検索値に「パン???」と入力すれば検索することができます。「?」は一つで任意の一文字を指定することができるため、任意の3文字であれば「???」と入力します。
では実際にVLOOKUP関数を使い、検索値を「パン???」と入力して検索してみましょう!
(E3番地にVLOOKUP関数を使い、検索値を「パン???」で設定)
(他の引数も設定しOKボタンをクリック!)
(すると「パン???」で前方一致かつ後ろに3文字あるメニューの金額「300」が出力される!)
今回の表には「パン」からはじまるメニューは今回の場合2つありますが、後ろに3文字あるメニューを検索することができました!
(「パン」からはじまるメニューは2つあるが、その後ろの文字数が3文字のものを検索できた!)
このようにワイルドカード「?」を使えば文字数を指定しながら、あいまい検索することができます!
では次は文字数を指定しながら後方一致をする例を見ていきましょう。
エクセルのVLOOKUP関数でワイルドカードを使い後方一致検索を行う!
次は、文字数を指定しながら後方一致する時の検索をしていきたいと思います!
今度は検索値を「???パン」として「パン」の前に3文字ある時のメニューを検索していきたいと思います!上の写真の表にある通り、「パン」の前に3文字あるメニューは「カレーパン」、「コッペパン」、「メロンパン」の3種類があります。
(「パン」の前に3文字あるメニューは3つある!)
実際に「???パン」を検索値として検索をかけると表の並び上、一番上にある「カレーパン」の金額が出力されるはずなので、E3番地に出力してみましょう!
(検索値を「???パン」として入力する)
(他の引数も設定しOKボタンをクリック!)
(すると「???パン」で後方一致かつ前に3文字あるメニューの金額「150」が出力される!)
このようにワイルドカード「?」を使えば文字数を指定しながら、あいまい検索することができます!また、該当するものが複数ある時は表の上の行から見ていった時に最初に一致するものが検索対象になります。これは前方一致の時も一緒です。
エクセルのVLOOKUP関数でワイルドカード「?」を使い文字数を指定しつつ前方一致検索を行う!
最後はある文字列とその前後の文字数を指定して検索する方法を紹介していきます。今回は「??サンドイッチ???」として、「朝食サンドイッチセット」の金額をE3番地に出力していきたいと思います!
では実際に出力していきましょう!
(検索値に「??サンドイッチ???」と入力)
(他の引数も設定しOKボタンをクリック!)
(すると「??サンドイッチ???」でサンドイッチの前に2文字、後ろに3文字あるメニューの金額「550」が出力される!)
このようにある文字列の前後に「?」をつけて、その文字列の前後の文字数を指定しながら検索をかけることもできます!
☆今回のポイント
1.ワイルドカード「?」を使えば文字数を指定しながら部分的に一致している文字列で検索できる!
2.「文字列?」は前方一致、「?文字列」は後方一致、「?文字列?」はその文字列が含まれるかつ前後の文字数を指定しながら検索が可能!
一通り把握したら操作に慣れるために練習問題をやってみましょう!
【練習問題】エクセル VLOOKUP関数でワイルドカード「?」で部分一致検索!
↑こちらをクリックすると練習問題をダウンロードできます!
(ダウンロード後、ファイルを開いたら「編集を有効にする(E)」をクリックして入力できるようにしてください。)
1.E3番地にVLOOKUP関数を使って、「検索値」を「パン???」としパンケーキの価格を出力してみましょう!
2.E3番地にVLOOKUP関数を使って、「検索値」を「???パン」としカレーパンの価格を出力してみましょう!
3.E3番地にVLOOKUP関数を使って、「検索値」を「??サンドイッチ???」とし朝食サンドイッチセットの価格を出力してみましょう!
【解答】エクセル VLOOKUP関数でワイルドカード「?」で部分一致検索!
今回の練習問題の解答はこの記事に書いてあるのでそちらを参考にしながら進めてみましょう。
お疲れ様でした!
次のページではエクセルのVLOOKUP関数で別シートを参照する方法について学習していきます。
別シートのリストから該当するデータを引っ張ってこないといけないシーンなどは多々あると思いますがそんな時に有効な技です!
これを覚えておくと効率的に作業ができ、ミスも減るのでぜひ覚えておきましょう!
次のページ:エクセル VLOOKUP関数 別シートの参照方法とエラーの対処法!
前のページ:エクセル VLOOKUP関数のワイルドカード「*」で部分一致検索!
【こちらもおススメ!】
■エクセル VLOOKUP関数の使い方!完全一致探しは0またはFALSE!
■エクセル VLOOKUP関数の使い方!#N/Aエラーの対処方法!