- ベストアンサー
VLOOKUPで検索値URLだと#N/Aになる原因
いつもお世話になっております。 1つどうしても解決できないことがございます。 エクセルの関数VLOOKUPを用い、URLを検索値として 抽出した場合、#N/Aが返って来ることがございます。 検索の範囲には、その該当URLは存在します。 これがまだ、検索値がURLでは必ず#N/Aで返って来るなら分かるのですが 別のURLを検索値とした場合では拾えるので混乱しております。 原因が分かる方、どうか教えていただけないでしょうか。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
「~(ティルダ)」は特殊記号なのでそのままでは使えません。 =VLOOKUP(SUBSTITUTE(A2,"~","~~"),Sheet1!B:C,2,0)
その他の回答 (4)
- bunjii
- ベストアンサー率43% (3589/8249)
>原因が分かる方、どうか教えていただけないでしょうか。 URLに限った現象ではありません。 "~"は制御文字なので検索文字列(A2の値)についてはそのまま使うと"~"が無視された文字列が検索値になります。 範囲(Sheet1!B:B)の"~"は文字列の中の1文字なのでA2の値が見付からないことになります。 検索値のみ"~"が制御文字扱いになるのは不合理かも知れませんがExcelの仕様なので仕方ないことです。 対策は回答No.3、4のように"~"を"~~"に置き換えれば解決します。 VLOOKUP関数以外にもMATCH関数が同様な結果になります。
- mt2015
- ベストアンサー率49% (258/524)
検索においてチルダ「~」は、「次に続く文字をワイルドカードなどの特殊文字として扱わない」と言う役目をもった特殊文字です。 セル式を以下の様にしてみてください =VLOOKUP(SUBSTITUTE(A2,"~","~~"),Sheet1!B:C,2,FALSE)
- panacon
- ベストアンサー率31% (214/679)
セルの書式が標準でスラッシュなど四則計算記号が入るとエラーになるのではと思います。正しく出るセルは、書式が文字列認識されているのではないでしょうか。一度、該当のデータをメモ帳に貼り付けて、対象のセルの書式を文字列にしたところに、メモ帳のコピーをして、形式を選択して貼り付けの「値」のみの貼り付けを実行してみてはと思います。
- Chiquilin
- ベストアンサー率30% (94/306)
その検索されないという URLがどんなものかを提示して下さい。 あと 使った数式もそのまま載せて下さい。
補足
検索値URLで抽出した場合 全体の#N/A率は4%です。 使用した数式 =VLOOKUP(A2,Sheet1!B:C,2,0) 検索値URLで 抽出可能 http://www13.plala.or.jp/koei/index.html http://www.takahara-motors.com/ http://www.takamatsu-const.co.jp http://www.takamatsu-meibokuten.com/ http://nttbj.itp.ne.jp/0668585411/ http://storeuser17.auctions.yahoo.co.jp/jp/user/takanoshoten?u=;takanoshoten #N/A http://www13.ocn.ne.jp/~imai-g/ http://www.h7.dion.ne.jp/~exterior/index.html http://www6.ocn.ne.jp/~kameoka http://www6.ocn.ne.jp/~sinwa600/ http://www.eonet.ne.jp/~magokorootodoke/ http://www15.ocn.ne.jp/~daihatsu/
お礼
=VLOOKUP(SUBSTITUTE(A2,"~","~~"),Sheet1!B:C,2,0) を試したところ、正常に機能いたしました。 適切なご回答をありがとうございました。