VLOOKUPの「FALSE」と「0」の違い

VLOOKUP関数の基本

VLOOKUP関数は、以下のような形式で使用されます:

excel
=VLOOKUP(検索値, 範囲, 列番号, 検索方法)
  • 検索値: 探したい値です。
  • 範囲: どの範囲からその値を探すかを指定します。
  • 列番号: 見つけたデータから何列目の値を取得するかを指定します。
  • 検索方法: 検索の正確さを指定します。「TRUE」または「FALSE」を指定することができます(省略すると「TRUE」になります)。

2. VLOOKUPの「FALSE」と「0」の違い

VLOOKUP関数の検索方法では、「FALSE」と「0」が同じ役割を果たします。具体的には、正確な一致を探す設定です。以下に、それぞれの説明をします。

  • FALSE: 完全一致の検索を行います。指定された検索値と同じものを、指定された範囲の1列目で探します。一致する値が見つからなければエラーが返されます。
  • 0: 「FALSE」と全く同じ意味を持ち、完全一致の検索を行います。0も正確な一致を意味し、「FALSE」との違いはほとんどありません。

実際、「FALSE」と「0」は置き換え可能です。例えば、次の2つのVLOOKUP関数はどちらも同じ動作をします。

excel
=VLOOKUP(A1, B2:D10, 2, FALSE)
=VLOOKUP(A1, B2:D10, 2, 0)

違いは形式上の違いのみであり、機能的には同一です。


3. 実際の使用例

例1: FALSEを使った正確な一致検索

次のような表があります。

商品名 価格
りんご 150
バナナ 100
みかん 120

ここで「りんご」の価格を調べたい場合、以下のようにVLOOKUPを使います。

excel
=VLOOKUP("りんご", A2:B4, 2, FALSE)

結果: 150

例2: 0を使った正確な一致検索

先ほどと同じ設定で、検索方法に「0」を使います。

excel
=VLOOKUP("りんご", A2:B4, 2, 0)

結果: 150

このように、「FALSE」も「0」も同じ結果を返します。


4. 「TRUE」と「1」の違い

「FALSE」と「0」が完全一致を意味するのに対して、「TRUE」と「1」は近似一致を意味します。これは、完全に一致するデータがなくても、検索値に最も近いデータを返す方法です。ただし、範囲内のデータが昇順に並んでいる必要があります。

excel
=VLOOKUP(A1, B2:D10, 2, TRUE)
  • TRUE: 近似値を検索します。完全一致が見つからない場合、最も近い(小さい)値を返します。
  • 1: 「TRUE」と同じ動作をします。

例えば、「80」という値を探す場合、表が昇順に並んでいると「100」の行を返すかもしれません。


5. 「FALSE」と「0」を使う際の注意点

注意点として、「FALSE」や「0」を使用した場合、完全一致しないとエラーが返されることです。したがって、VLOOKUPを使って検索する際には、対象のデータが正確に一致しているかを確認する必要があります。

#N/Aエラーの回避法

データが一致しない場合、VLOOKUPは**#N/Aエラー**を返します。これを防ぐために、IFERROR関数と組み合わせて使うことが推奨されます。

excel
=IFERROR(VLOOKUP(A1, B2:D10, 2, FALSE), "該当なし")

このように設定することで、エラーが発生した場合に「該当なし」などのメッセージを表示することができます。


6. まとめ

  • FALSE0はVLOOKUP関数で「完全一致」を探す際に使われるもので、どちらも同じ意味を持ちます。
  • 書き方の違いだけで、どちらを使っても同じ結果が得られます。
  • 一方で「TRUE」や「1」は、近似一致を意味し、データが昇順に並んでいる場合に使用されます。
  • #N/Aエラーを回避するためには、IFERROR関数を併用すると便利です。

VLOOKUP関数を使う際には、この検索方法の違いを理解して、目的に応じた正確な検索を行いましょう。

コメント