- 公開日:
ExcelのVLOOKUP関数で参照ができない場合
VLOOKUP関数はよく使われる便利な関数ですが、なぜか参照がうまくできない場合が多々あります。
データが存在しない場合にエラーが返されるのは正常に検索ができていますが、参照ができていない場合は間違えた値を抽出してしまい、集計ミスなどにも繋がるので注意が必要です。
この記事では、ExcelのVLOOKUP関数で参照ができない場合の原因と対処法をご紹介します。
ExcelのVLOOKUP関数で参照ができない場合
以下では、VLOOKUP関数で参照ができない原因を場合分けして詳しく解説しています。
半角チルダが入っている場合
半角チルダ(~)が検索値や検索範囲に入っている場合は#N/Aエラーが返されます。

上記の画像は、10:00~11:00にどこの会議室で会議が行われるかをA1セルからC9セルで検索して、F2セルに取得した表です。
しかし、数式は合っているのにF2セルに検索値が存在しない場合に表示される#N/Aエラーが表示されています。
今回の場合は、検索値と範囲にワイルドカードを打ち消す特殊文字の半角チルダが入力されているために一致していないと判定されてしまいました。
ワイルドカードとは、特殊文字を組み合わせて「*会社」「???会社」と入力することで不特定の数値や文字列を検索できる機能のことです。
ワイルドカードの詳しい説明は以下の記事でご紹介しています。
以下で、エラーを解消する手順をご紹介します。

まず、上記のような表の場合は検索値の時間を手入力するよりも、リストにして任意の時間を選択する方が効率がいいので、検索値をリスト化します。
①検索値に指定したセル(例:E2セル)を選択します。
②データタブ、③データの入力規則の下矢印、④データの入力規則の順に選択します。

「データの入力規則」ダイアログボックスが表示されました。
①入力値の種類でリスト、②元の値で範囲内の時間が入力されたセル(A2セルからA9セル)の順に選択して、③OKボタンを押します。

検索値をリストにすることができました。
E2セルの下矢印ボタンを押すと検索値を変更することができます。

準備が整ったので、エラーの原因になっている半角チルダを別の記号に置換してエラーを解消していきます。
①範囲内の半角チルダが入力されているセル(例:A2セルからA9セル)を選択します。
②ホームタブ、③検索と選択、④置換の順に選択します。

「検索と置換」ダイアログボックスが表示されました。
①置換タブを選択します。②検索する文字列に半角で「~~」を入力し、③置換後の文字列に全角で「~」を入力します。
④すべて置換ボタンを押します。
「検索する文字列」に入力した1つ目の半角チルダに続く文字列を検索するようにExcelに指示しています。2つ目の半角チルダが実際に置換する文字列なので、必ず半角で「~~」を入力してください。

「Microsoft Excel」ダイアログボックスが表示されました。
OKボタンを押します。

「検索と置換」ダイアログボックスに戻りました。
閉じるボタンを押します。

検索値のリストから抽出したい時間を再選択すると、F2セルに結果が表示されました。
E2セルの検索値はA2セルからA9セルを参照しているので、半角チルダを全角チルダにすることで結果を抽出することができました。
文字列は一致しているのにエラーになる場合

上記の画像は、「検索範囲」と「検索値」の文字列が一致しているように見えますが、VLOOKUP関数の結果がエラーになっています。
検索方法を「FALSE」にしている場合は、文字列の表示形式なども同じにする必要があります。
文字列は一致しているのにエラーが表示される場合の原因と対処法は以下の記事でご紹介しています。
ExcelのVLOOKUP関数で文字列はあるのにエラーになる
#N/Aエラーが表示される場合
#N/Aエラーは、主に検索値が検索範囲に存在しない場合に表示されるエラーです。
ただし、参照範囲がずれて存在する値が検索範囲から漏れたり、検索値を検索する列の位置を間違えたりしている場合にも表示されることがあります。
#N/Aエラーが表示される場合の原因と対処法は以下の記事でご紹介しています。
ExcelのVLOOKUP関数で#N/A(無効な値)エラーの解決法
#REF!エラー、#NAME?エラー、#VALUE!エラーなどが表示される場合
VLOOKUP関数はよく使う関数ですが、操作ミスなどでエラーが表示されることがあります。
参照や引数を間違えてしまうと正しい結果を取得することができないので、1つずつ原因を確認していきましょう。
以下の記事では、「#REF!」「#NAME?」「#VALUE!」などのエラーが表示される場合の原因と対処法をご紹介しています。
別シートの参照を間違えている
VLOOKUP関数で別シートを参照する際は、シートを移動して操作をするため参照のミスに気が付きにくくなります。
引数に指定した検索値や範囲などを間違えていないか確認しましょう。
以下の記事で、別シートの参照がうまくいかない場合の原因と対処法をご紹介しています。