- ベストアンサー
VLOOKUP関数の「FALSE」と「TRUE」の違いについて
文字コード表を「VLOOKUP関数」を使って検索する仕組みを作りましたが、「*」「~」の検索がうまくいきません。検索方法を「FALSE」から「TRUE」に変えて検索すると正常に検索できます。 この違いについて何方か教えてください。よろしくお願いします。 以下に、検索表と実行結果を添付します。 検索結果を添付します。 検索表 文字 ASC ( 28 ) 29 * 2a , 2c . 2e / 2f ~ 7e 実行結果 検索文字 FALSE TRUE ( 28 28 ) 29 29 * 28 2a ★ , 2c 2c . 2e 2e / 2f 2f ~ #N/A 7e ★ ★の部分の違いについて分からないのです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
=Vlookup(検索値,範囲,列番号,検索の型) 検索の型をFalseにすることにより、検索値にワイルドカードが使えるようになります。(Match関数も同様) よって、ワイルドカードの 「*」「?」を検索するためには「~」を付け 「~*」、「~?」 チルダ自身も「~~」として検索することになります。 ↓やや強引かも =VLOOKUP(IF(OR($A2="~",$A2="*",$A2="?"),"~","")&$A2,検索表,2,D$1)
その他の回答 (1)
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
これはワイルドカードです。 2004ではvlookupのヘルプには書いてありませんが、matchのヘルプ に書いてありまして、検索の型がFALSEで検索値が文字列の場合、 アスタリスクはワイルドカードとして機能します。だから、"*"は 問答無用で最初の行にヒットしちゃいます。また、チルダは続く1 文字をワイルドカードとして扱わないエスケープ文字として働くの で、"~"は実質的には何もない空白と同じです。 FALSEの方でアスタリスクを探したかったら"~*"と、チルダを探し たかったら"~~"と書いてください。
お礼
分かりやすい説明有り難うございます。 出来ました。 ワイルドカードは知っていましたが、チルダ を使うのは知りませんでした。
お礼
分かりやすい説明有り難うございます。 例も添付して頂き参考にします。 ワイルドカードは知っていましたが、チルダ を使うのは知りませんでした。