どうも!シャチクショーです!
日々の業務で何千何万行というデータから欲しい情報を引っ張ってきたいけど、名称が若干変わったりしていて
VLOOKUPだけでは思うように欲しい情報を取ってくることが出来なかった経験はないでしょうか?
実はそんな場合でも応用が効くあいまい検索の方法をお伝えいたします。
その方法は
あいまい検索方法は
ワイルドカードを使いVLOOKUPで検索をするだけ!
ワイルドカードとは『*』(アスタリスク)や『?』(クエスチョン)のことで、これを使えばあいまい検索はパッと簡単にできてしまうんです!
『*』(アスタリスク)や『?』(クエスチョン)の使用例
『*』(アスタリスク)は0文字以上の任意の文字列を表す場合に使います。『?』(クエスチョン)は任意の1文字を表すときに使用します。
使用例 | 意味(該当例) |
---|---|
*雨 | 『雨』で終わる文字列 (例)雨、雷雨、五月雨、集中豪雨 |
*雨* | 『雨』を含む文字列 (例)雨、雷雨、雨雲、梅雨前線 |
雨* | 『雨』で始まる文字列 (例)雨、雨雲、雨上がり |
?雨 | 『雨』で終わる2文字の文字列 (例)雷雨 |
雨??? | 『雨』で始まる4文字の文字列 (例)雨上がり |
以下では実際にVLOOKUP関数を用いた、あいまい検索のやり方を説明します。
ワイルドカード『*』を用いて VLOOKUP 関数であいまい検索する方法
下図では【広告費B】の請求額をあいまい検索を使って引っ張ってきました。
【E3】セル内で記述した数式は以下となっています。
=VLOOKUP(“*”&D3&“*”,A3:B8,2,FALSE)
検索値を『*』で挟むことによって、【広告費B】の前後に不特定数の文字があったとしても検索できるようにしています。
普段よく使うVLOOKUPにワイルドカードを付けるだけで、あいまい検索が可能になっているんです。
VLOOKUPの使い方がよくわからないという人は以下のリンクをご確認ください。
ワイルドカード『?』を用いて VLOOKUP 関数であいまい検索する方法
それでは次に『?』はどういうときに使用するのか、例を用いてご説明いたします。
上図のように、検索したい文字数は分かっているが、どういう文字が入るか分からない場合に使用したります。
例えば、日付とかが分からない場合などには『?』が活用しやすいです。
式は下記のように日付の部分を『?』にするだけ検索が出来ます。
=VLOOKUP(D3&“????/??/??”,A3:B8,2,FALSE)
検索値を『”????/??/??”』にしているのは【広告費】以降は日付であることは分かっているがいつなのかわからないので、その部分にワイルドカードを使いあいまい検索をしています。
※ワイルドカードを使う場合、条件に該当するデータが複数ヒットする場合があります。その場合は取ってきたい情報ではない可能性も御座いますので、ご注意ください。
該当するデータがいくつあるか調べる方法を以下でご説明します。
該当箇所がいくつあるか調べる方法
調べる方法としてはCOUNTIF関数を用いて調べることが出来ます。
=COUNTIF(A3:B8,D3&”????/??/??”)
この数式を使えば、該当するデータがいくつあるのかパッと調べることが可能です。もし、カウントが2以上であればあいまい検索で引っかかるデータが複数存在しますので、あいまい検索は使うことが出来ません。
まとめ
エクセルであいまい検索を行う場合はワイルドカードを使うべし。
- 一部分は分かっているが、それ以降の文字列や文字数が分からない場合は『*』(アスタリスク)を使用する。
- 一部分が分かっているが、日付などの部分だけが分からない場合は『?』(クエスチョン)を使用する。
- あいまい検索で該当データがいくつ存在するかCOUNTIF関数を用いて確認をする。
VLOOKUP関数のあいまい検索は使い方によってはとても便利な検索方法です。是非使っていきましょう!
コメント