• ベストアンサー

VLOOKUPで検索値URLだと#N/Aになる原因

いつもお世話になっております。 1つどうしても解決できないことがございます。 エクセルの関数VLOOKUPを用い、URLを検索値として 抽出した場合、#N/Aが返って来ることがございます。 検索の範囲には、その該当URLは存在します。 これがまだ、検索値がURLでは必ず#N/Aで返って来るなら分かるのですが 別のURLを検索値とした場合では拾えるので混乱しております。 原因が分かる方、どうか教えていただけないでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.4

「~(ティルダ)」は特殊記号なのでそのままでは使えません。 =VLOOKUP(SUBSTITUTE(A2,"~","~~"),Sheet1!B:C,2,0)

sakana2016
質問者

お礼

=VLOOKUP(SUBSTITUTE(A2,"~","~~"),Sheet1!B:C,2,0) を試したところ、正常に機能いたしました。 適切なご回答をありがとうございました。

その他の回答 (4)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.5

>原因が分かる方、どうか教えていただけないでしょうか。 URLに限った現象ではありません。 "~"は制御文字なので検索文字列(A2の値)についてはそのまま使うと"~"が無視された文字列が検索値になります。 範囲(Sheet1!B:B)の"~"は文字列の中の1文字なのでA2の値が見付からないことになります。 検索値のみ"~"が制御文字扱いになるのは不合理かも知れませんがExcelの仕様なので仕方ないことです。 対策は回答No.3、4のように"~"を"~~"に置き換えれば解決します。 VLOOKUP関数以外にもMATCH関数が同様な結果になります。

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.3

検索においてチルダ「~」は、「次に続く文字をワイルドカードなどの特殊文字として扱わない」と言う役目をもった特殊文字です。 セル式を以下の様にしてみてください =VLOOKUP(SUBSTITUTE(A2,"~","~~"),Sheet1!B:C,2,FALSE)

  • panacon
  • ベストアンサー率31% (214/679)
回答No.2

セルの書式が標準でスラッシュなど四則計算記号が入るとエラーになるのではと思います。正しく出るセルは、書式が文字列認識されているのではないでしょうか。一度、該当のデータをメモ帳に貼り付けて、対象のセルの書式を文字列にしたところに、メモ帳のコピーをして、形式を選択して貼り付けの「値」のみの貼り付けを実行してみてはと思います。

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.1

その検索されないという URLがどんなものかを提示して下さい。 あと 使った数式もそのまま載せて下さい。

関連するQ&A

専門家に質問してみよう