完全一致と近似一致
VLOOKUPの一致方法としてTRUEとFALSEを使い分けます。
「完全一致と近似一致」はCoddyKit上の無料Excel Formulas Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはExcel Formulas Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Excel Formulas Academyコースには全4レッスンが含まれています。
第4引数が重要な理由
VLOOKUPの最後の引数であるrange_lookupは、検索方法を決めます。小さな引数ですが、大きな役割を持ちます。
- FALSE(または0)は完全一致を意味します
- TRUE(または1)は近似一致を意味します
これを間違えることは、スプレッドシートで最もよくあるミスの1つです。このレッスンでは、それぞれをいつ使うべきかを具体的に説明します。
=VLOOKUP(value, table, col, FALSE)FALSEによる完全一致
完全一致では、値が完全に一致するものを探します。値が存在しない場合、VLOOKUPは推測せずに#N/Aエラーを返します。
商品コード、従業員ID、メールアドレスなど、完全に一致するものだけが正しい一意の識別子を検索するときは、FALSEを使用してください。
完全一致では、表を並べ替える必要はありません。VLOOKUPは値が見つかるまで検索します。
=VLOOKUP("A100", A1:C4, 3, FALSE)完全一致で返される値
価格表(A100 Apple 0.50、B200 Banana 0.30、C300 Cherry 1.20)で、存在するコードを完全一致で検索すると、正しく結果が返されます。
1.20が返されます。ただし、"Z999"のように存在しないコードを検索すると、#N/Aが返されます。このエラーは実際には役立ちます。誤った近隣の値を返すのではなく、項目が本当に存在しないことを知らせてくれるからです。
=VLOOKUP("C300", A1:C4, 3, FALSE)TRUEによる近似一致
近似一致では、検索値以下で最大の値を探します。完全一致するIDではなく、範囲や区分を検索するための機能です。
典型的な用途は、税率区分、送料区分、成績の境界、数量割引などの段階表です。値が2つのしきい値の間に入る場合に使用します。
TRUEには重要なルールが1つあります。次のシーンで説明します。
=VLOOKUP(value, table, col, TRUE)TRUEには並べ替え済みの表が必要
近似一致を機能させるには、最初の列を昇順に並べる必要があります(小さい値から大きい値の順)。VLOOKUPは列を下方向に進み、検索値を超えない最後の値で止まります。
列が並べ替えられていない場合、TRUEはエラーを表示せずに予測できない誤った結果を返します。この気付きにくい失敗があるため、区分検索が明確に必要な場合を除き、TRUEを避ける人が多いのです。
成績区分の例
最小点数を基準に昇順で並べた成績表が、A1:B5にあるとします。
- 0 = F
- 60 = D
- 70 = C
- 80 = B
- 90 = A
76点の場合は、70~79の区分に入るためCを返します。数式ではTRUEを使い、76を超えない最も高いしきい値を探します。
=VLOOKUP(76, A1:B5, 2, TRUE)区分検索の流れ
検索値が76でTRUEを指定した場合、VLOOKUPは並べ替えられたしきい値を0、60、70、90…の順に読み取り、それぞれを比較します。
- 0は76以下なので、検索を続けます
- 60は76以下なので、検索を続けます
- 70は76以下なので、検索を続けます
- 90は76より大きいため、停止します
最後に有効だった行(70)に戻り、その区分であるCを返します。近似一致は、実質的にはしきい値の間を検索する機能です。
=VLOOKUP(76, A1:B5, 2, TRUE)引数を省略する危険性
第4引数を完全に省略すると、VLOOKUPはTRUE(近似一致)を既定値として使用します。完全一致になると思っている人にとって、これは意外な動作です。
並べ替えられていないリストで=VLOOKUP(A2, Data!A:B, 2)のような数式を使うと、誤った値がエラーなしに返されることがあります。安全な習慣として、並べ替えた表で意図的に区分検索を行う場合を除き、必ずFALSEを入力してください。
=VLOOKUP(A2, Data!A:B, 2, FALSE)比較して確認
違いを簡単に比較すると、次のとおりです。
- FALSE / 完全一致:表を並べ替える必要がなく、見つからない値には#N/Aを返します。IDやコードに適しています
- TRUE / 近似一致:表を昇順に並べる必要があり、範囲内の値では#N/Aを返しません。段階や区分に適しています
答えたい問いに応じて選びます。「この項目は完全に一致する形で存在するか」ならFALSE、「これはどの区分に入るか」ならTRUEを使用します。
実例:送料区分
D2にある重量から、A2:B6の並べ替え済みの区分表(しきい値は0、1、5、10、20kg)を使って送料を求めます。近似一致により、正しい区分が選ばれます。
D2が7の場合は5kg区分に入り、その区分の料金が返されます。重量を変更すると区分もすぐに更新されるため、考えられるすべての重量を一覧にする必要はありません。
=VLOOKUP(D2, $A$2:$B$6, 2, TRUE)速度と信頼性のトレードオフ
性能面でも、微妙な違いがあります。非常に大きく、並べ替え済みの表では、近似一致(TRUE)のほうが速い場合があります。スプレッドシートがすべての行を検索するのではなく、並べ替えられた値の中をすばやく移動できるためです。
しかし、速度より正確さが優先されます。データが並べ替えられていない場合や、正確なIDが必要な場合は、必ずFALSEを選んでください。少し遅くても正しい答えのほうが、速くても誤った答えより優れています。現在のスプレッドシートや一般的な表のサイズでは、速度差はほとんど気にならないため、安全性を優先してFALSEを既定にしてください。
=VLOOKUP(A2, $A$1:$C$1000, 3, FALSE)クイックチェック
状況に合った一致方法を選びましょう。
まとめ:完全一致と近似一致
重要なポイント:
- FALSE = 完全一致。表が並べ替えられていなくても問題なく、見つからない値には
#N/Aを返します - TRUE = 近似一致。最初の列を昇順に並べる必要があり、検索値を超えない最大の値を探します
- 引数を省略すると既定値はTRUEになるため、必ず明示してください
- IDやコードには完全一致を、段階や区分には近似一致を使用します
次は方向を変えて、HLOOKUPを使って行方向に検索します。
=VLOOKUP(A2, $A$1:$C$100, 3, FALSE)AI チューターと学ぶ Excel — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「完全一致と近似一致」レッスンは無料ですか?
はい。「完全一致と近似一致」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Excel Formulas Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Excel Formulas Academyコースには全4レッスンが含まれています。
「完全一致と近似一致」で何を学びますか?
VLOOKUPの一致方法としてTRUEとFALSEを使い分けます。 ブラウザで直接実行するハンズオンコードでExcel Formulas Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Excel Formulas Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのExcel Formulas Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「完全一致と近似一致」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このExcel Formulas Academyレッスンでコードを書いて実行できますか?
はい。すべてのExcel Formulas Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。