VLOOKUP(ブイ・ルックアップ)関数で間違えやすい点

続いて、VLOOKUP関数を使用する際に、初心者がつまづきやすいポイントをまとめました。あらかじめ注意点を頭に入れておくことで、エラーを起こしづらくなります。また、エラーが起こった際の原因究明にも役立つため、内容を把握しておきましょう。

数式をコピーする際は「絶対参照」でコピーする

数式をコピーする方法には、「相対参照」と「絶対参照」の2つの方式があります。相対参照とは、参照するセルを一つずつずらしてコピーするもの。これは「オートフィル」と呼ばれ、セルの右下にカーソルを合わせて、現れる十字架を下に引っ張って数式をコピーする方法です。SUM関数等の数式をコピーする場合は、非常に便利な方法です。

ただし、VLOOKUP関数の数式をコピーする際に相対参照でコピーするオートフィルを使用すると、正しい結果を表示しなくなってしまいます。これは、参照する範囲が1列ずつずれてしまうからです。

この問題を解消するには、相対参照ではなく「絶対参照」という方式を用いましょう。絶対参照とは数式をコピーしても参照するセルがずれることなく、常に同じ範囲を選択するコピー方式です。絶対参照は以下のように表記します。

$A$1:$D$15
※A1〜D15までの範囲を参照したい場合の表記です。

VLOOKUP関数では、基本的に「絶対参照」で数式を組んでおくと良いでしょう。

同じ列に同じ値が2つ以上ある場合、2つ目以降は検知しない

VLOOKUP関数で参照リストを作成する際は、同じ列に同じ値が入っていないかに気をつける必要があります。なぜなら、VLOOKUP関数は指定した範囲を参照するものの、該当する値を見つけた時点で検索を終了してしまうからです。

つまり、参照範囲に同じ値が複数入っていた場合、2つ目以降のデータは表示されなくなります。このような見逃しが起きないよう、同じ値は一つに統合する、または区別できるような表記を付け加えましょう。

参照リストに空白文字があると検知しない

VLOOKUP関数では、指定した選択範囲に何かしらのミスがあると正しい表示がされなくなってしまいます。たとえば、参照リスト中の文字の末尾に空白文字が入っていた場合、見た目ではわかりませんが、エラーを引き起こす原因になります。

VLOOKUP関数を正しく活用するには、参照リストを作成する際にこのようなミスがないよう、十分に注意する必要があります。

セルの書式設定が「文字列」になっていると正しく表示されない

テキストファイルやCSVファイルから読み込みを行った際など、セルに入力した数式が計算されずに、数式の状態で表示されることがあります。この場合、該当するセルの書式設定が「文字列」になっている可能性が高いです。

書式設定が「文字列」になっていると、数値も文字列として扱われ、セルには入力した値がそのまま表示されます。これは書式設定を「標準」にすることで解決できます。

計算式が正しい場合でもエラーが出る

VLOOKUP関数では、なんらかの影響で結果を表示できない場合、すべて「#N/A」と表示されます。数式が正しくても誤っていても、同じエラーが表示されるため、エラーの原因究明が難しくなってしまうのです。

たとえば、社員番号が2,500番まで振られた社員一覧があるとします。この社員一覧を参照してVLOOKUP関数を組んだ場合、2,501番と入力すると値が存在しないことから「#N/A」が表示されます。ただし、数式自体が間違っているわけではありません。

VLOOKUP関数ではこのような現象が起こるため、「#N/A」が表示された場合は、数式の誤り以外に数字の入力間違いや参照リストの誤りがある可能性もある、と覚えておきましょう。