• 公開日:

ExcelのVLOOKUP関数が反映されない(できない)場合

この記事では、ExcelのVLOOKUP関数が反映されない(できない)場合の原因と対処法をご紹介します。

VLOOKUP関数が反映されない(できない)場合、エラーが表示される以外に数式がそのまま表示されたり結果が更新されなかったりして、検索がうまくいかないことがあります。

関数の扱いに慣れていない場合は、原因を1つずつ切り分けて解決することが重要です。大きく5通りに分けて説明しているので参考にしてみてください。

ExcelのVLOOKUP関数が反映されない(できない)場合

VLOOKUP関数で結果がエラーになる場合や結果が反映されないなど、VLOOKUP関数がうまくいかない場合の原因と対処法をご紹介します。

結果がエラーになる場合

VLOOKUP関数を使う際、「#N/A」「#REF!」「#NAME?」「#VALUE!」などのエラーが表示されてしまい、検索がうまくいかないことがあります。

特に「#N/A」エラーは検索値が存在しない場合に表示されるため、本当に値がない場合は正しい結果が表示されているので問題ありません。

ただし、引数の範囲から検索値が漏れていたり、文字列の表示形式が統一されていない場合にも表示されるので注意が必要です。

以下の記事で、エラーが表示されてVLOOKUP関数の検索がうまくいかない場合の原因と対処法をご紹介しています。

ExcelのVLOOKUP関数でエラーになる原因について

表示形式が文字列になっている場合

表示形式を数値にしても反映されない

上記の画像の検索値(D2セル)は「数値」で入力されていますが、検索範囲のA2セルからA9セルは「文字列」で入力されています。

表示形式が異なる場合は値が完全一致していないと判定されることがあるので、表示形式を統一する必要があります。

ただし、「文字列」の場合は上記の画像の赤矢印で示した表示形式を「数値」に変更しても、A2セルからA9セルのように前の表示形式を維持してしまいます。

以下の手順で「文字列」を「標準」に一括で変更していきます。

区切り位置を選択する

表示形式を変更したい範囲(例:A2セルからA9セル)、②データタブ、③区切り位置の順に選択します。

次へを押す

「区切り位置指定ウィザード-1/3」が表示されました。

次へボタンを押します。

次へを押す

「区切り位置指定ウィザード-2/3」が表示されました。

次へボタンを押します。

標準を選択して完了ボタンを押す

「区切り位置指定ウィザード-3/3」が表示されました。

①列のデータ形式でG/標準を選択し、②完了ボタンを押します。

表示形式が変更されて結果が表示された

表示形式を「文字列」から「標準」にすることでE2セルに結果を表示することができました。

数式がそのまま表示される場合

数式がそのまま表示される

関数を入力してEnterを押すと、上記の画像のE2セルのように数式がそのまま表示されてしまい、VLOOKUP関数がうまくいかないことがあります。

数値の表示形式が変更されている場合や、上記の画像のように列幅が広くなっている場合は、計算結果ではなく数式を表示する設定になっている可能性があります。

数式がそのまま表示されてしまう場合の対処法を以下の記事でご紹介しています。

ExcelのVLOOKUP関数で数式のまま表示された場合

手動計算になっている場合

検索値と検索結果が一致していない

Excelの設定で、計算方法を「手動」にしている場合は数式を入力したセルをダブルクリックしないと、計算結果が反映されません。

例えば上記の画像のD2セルの検索値「商品コード」をA103からA105に入れ替えた場合、「商品コード」A105に紐づく「商品名」チャイラテを抽出したいところ、VLOOKUP関数の結果が反映されず、「商品コード」A103に紐づく「商品名」ジャスミン茶のままになっています。

以下では、計算が手動になっている場合に、自動計算に変更する手順をご紹介します。

自動計算に変更する

数式タブ、②計算方法の設定、③自動の順に選択します。

結果が表示された

E2セルに「商品コード」A105に紐づく「商品名」チャイラテが返されました。

以下で、ほかの検索値に入れ替えた場合でも、自動計算が行われるか試してみます。

検索値を入れ替えても結果が反映された

検索値をA107に入れ替えると、E2セルに「商品コード」A107に紐づく「商品名」ミルクティーが返されました。

計算方法を「手動」にすると、値が正しく抽出されていないことに気が付きにくいので「自動」にしておくことをおすすめします。

改行が入っている場合

検索値やVLOOKUP関数の範囲に改行が入っている場合に一括で改行を削除する方法を2通りご紹介します。

検索と置換から改行を削除する

セル内に入力された改行は「検索と置換」機能を使って簡単に削除することができます。

Back Spaceを使って削除することもできますが、数が多い場合は一括で削除すると効率的です。

改行を一括で削除する方法は、以下の記事でご紹介しています。

Excelの改行コードを使ってセル内の改行を一括削除する

CLEAN関数を使って改行を削除する

関数は合っているのにエラーになる

上記の画像のE2セルに入力されたVLOOKUP関数の結果が、検索値が存在しない場合に表示される#NAエラーになっています。

検索値(例:A103)はA4セルの値と一致しているように見えます。数式や表示形式が正しく入力されていてるのにエラーが表示される場合は、改行が入っているため値が一致していない可能性があります。

改行が入っている

上記の画像のA4セルをダブルクリックすると、値の後ろに改行が入っていることが分かります。

以下では、関数を使って改行を削除する手順をご紹介します。

列を挿入する

B列の列番号にマウスオーバーして右クリックし、②右クリックメニューから挿入を選択します。

CLEAN関数を入力する

B2セルに「=CLEAN(A2)」を入力し、Enterを押します。

CLEAN関数は、印刷できない文字列を削除する関数です。ほかのアプリケーションやソフトなどから取り込んだデータに入力されたセル内のタブ記号や改行などの制御文字を削除することができます。

書式は「=CLEAN(文字列)」です。

オートフィルする

B2セルのフィルハンドルをドラッグして数式をコピーします。

数式がコピーされた

B2セルからB9セルに改行を削除した値が表示されました。

VLOOKUP関数を修正する

F2セルに「=VLOOKUP(E2,B2:C9,2,FALSE)」を入力し、Enterを押します。

範囲を指定する際、関数を入力した列を必ず左端にしてください。

結果が表示された

改行を削除することで検索値と範囲の値が完全一致して、F2セルに結果が表示されました。