「VLOOKUP関数 合ってるのにエラー」と検索しないほうがいい理由

  • URLをコピーしました!

「VLOOKUP 合ってるのにエラー」といった検索が、当ブログをよくご覧いただいています。
その答えについて書いてみました。

※検索画面 by SIGMA fp

VLOOKUP関数が合っているのにエラー

VLOOKUP関数とはExcelの機能の1つであり、私が最も好きな関数です。
たとえば、このようにコードと都道府県があるリスト(赤い部分)を準備すれば、コード(青い部分)を入力して、都道府県を表示するということがきます。

入力を省略したり、すでにあるデータに対応するデータを効率的にくっつけたりすることができるので便利です。

 

事例については、こちらのカテゴリーの記事を参考にしていただければ。
Excel VLOOKUP・XLOOKUP入門 アーカイブ | EX-IT

VLOOKUP関数を使えば特定のリストからデータを探し出して表示することができるのです。

この場合は、セルE2にある「13」をA列から探し、もしあったら、A列からB列という範囲のうち、2列目、つまりB列で同じ行のセルB3「東京都」を表示しています。

関数の最後にあるFALSEは、「完全に一致したものを探す」ということを意味し、この事例では省略しても影響はありませんが、エラーになることもあるので、つけておいたほうがいいでしょう。

VLOOKUP 関数は、エラーがでやすいものです。
そのエラーパターンをまとめてみました。

VLOOKUP関数のエラーパターン

VLOOKUP 関数で考えられるエラーは次のようなものです。

リストにないものを探している

このケースでは、12、13、14といったコードしかないのに、セルE2に「15」と入れてしまっています。
当然、見つからないので、エラーが出るのです。
VLOOKUP 関数を正しく入力していても、つまり「合っていても」、リストにないものはエラーが出ても仕方ありません。

こういった場合も同様です。

リストが間違っている

「13」を入れると、「東京都」と表示したいのですが、「埼玉県」と表示されています。
なぜならリストで、13の右に「埼玉県」と入れてしまっているからです。
VLOOKUP関数は合っていても。


また、このように東京都と表示すべきところを「東京」というリストにしてしまっていたら、当然「東京」としか表示されません。
VLOOKUP関数は合っていても。
忖度して「東京都」にはしてくれません。

 

リストの範囲指定が間違っている

リストの範囲は列で指定するのがおすすめです。
エラーが減ります。
この場合はセルA1からB2という範囲で指定しており、該当の「13 東京都」というデータはその範囲外にあるのでエラーとなりました。
VLOOKUP関数は合っていても。

FALSEを忘れている

今回の事例であえてFALSEがないとエラーになるものをつくってみました。
12、13、14という順番ではなく、12、14、13という順番で、FALSEを指定しないと、13に近い「12」を見つけてきてしまい、その右の「千葉県」を表示してしまいます。

リストが重複している

このケースでは 「13 東京」「13 東京都」と、コートが「13」で2つのデータがあります。
VLOOKUP 関数は最初にヒットした「13」を表示しますので、データの上のほうにある「東京」が表示されるわけです。
VLOOKUP関数は合っていても。
リストに重複がないかチェックしましょう。

表示させる列が間違っている

このケースでは2列目を表示するところを3列目としています。
間違ったものが表示される場合もありますし、このケースでは A からB 列の2列しかないので、また違ったエラーが出ているのです。

 

全角と半角の違いがある

データ上、全角と半角は別物です。
tokyoではなく、Tokyoと入れると、該当データがなくエラーになります。
VLOOKUP関数は合っていても。

 

スペースが入っている

一見合っている感じですが、

「東京都」のうしろにスペース(空白)があり、「東京都 」となっているので、別物と判断し、エラーとなります。
VLOOKUP関数は合っていても。

データを探す対象が範囲の一番左にない

VLOOKUP 関数は探すものが指定した範囲の一番左にある必要があります。
今回のケースでは A列にコードがなければいけないのです。
それが B 列にあるとエラーになります。
VLOOKUP関数は合っていても。

VLOOKUP と入力されていない

VLOOKUP と入力したつもりがスペルを間違っているとエラーになります。
「おそらくVLOOKUPだろう」と人間が見ればわかるのですが、Excelはそんな判断をしてくれません。

その他考えられるのはコピーをして範囲の指定がずれるというものです。

ぱっと思いつくだけでこれぐらいのエラーパターンがあるわけですが、VLOOKUP関数が合っているのにエラーと考えてしまうこともあるでしょう。

「合っているのにエラー」と考えずに、まずは見直したほうがいいでしょう。

Excel、ITも自責のほうがいい

Excel にもエラーはあります。
人間が正しく入力または操作しているのに違う結果になる、いわゆるバグといわれるものもないとはいえません。
しかしながら人間が合っているのにExcelが間違っているというケースは私の感覚では1割以下ではないかなと。

人間が正しく入力、操作すれば、適正な結果を出してくれるのが、Excel や IT。

「合っているのに」と考えないで、自分に原因があるという自責の精神で取り組むのがExcelやITを使う際にはおすすめです。
(「合っているのに」という検索が、自責の結果のものである可能性もありますが)

自責は、ExcelやITに強くなる秘訣の1つと考えています。
何かエラーが出たときには、まずは自分をチェックしてみるということはやっておきたいものです。

パスワードも同様で、「合っているのに」ログインできないというのはまず考えられません。
「何もしてないのに」というトラブルも。

これは、人と人の関係にも言えます。
人に仕事を依頼して何か間違った結果が返ってきたときは、自分の伝え方が悪かったと思ったほうがいいかなと。
自責を学ぶためにも ExcelやIT をどんどん使ってみるというのもオススメです。
特にプログラミングは 自分の伝え方が大事ですので、自責のクセをより磨くことができます。

なお VLOOKUP 関数でどうしてもエラーが出るのであれば、XLOOKUP関数を使ってみるのもおすすめです。
(バージョンによって使えない場合もありますが)

VLOOKUP 関数よりも新しい関数で、よりエラーが出にくく、わかりやすくなっています。
こちらの記事を参考にしてみていただければ。

VLOOKUP関数を使ってはいけない。よりシンプルなXLOOKUP関数を使う。

 

 



■編集後記
昨日は、新刊の原稿チェックに専念。
だいぶ進みました。
今日が締切なので、もう一息です。

「1日1新」
娘と新しいところへ
セリア スケッチブック

■娘(3歳10ヶ月)日記
宮崎のばぁばが送ってくれたオレンジのミニトマトが大好きで、毎日食べています。
色というより(オレンジは嫌いとこないだ言ってたので)、味が好きなようで。
昨日、LINE電話で、追加注文(?)していました。

  • URLをコピーしました!