VLOOKUPの近似一致の使い方|「○以上△未満」で評価を判定する

VLOOKUPの近似一致の使い方|「○以上△未満」で評価を判定する
目次

はじめに

ExcelのVLOOKUP関数は、完全一致検索だけでなく、近似一致検索も行うことができます。近似一致検索は、「○以上△未満」のような範囲で値を検索する場合に非常に役立ちます。この記事では、VLOOKUP関数の近似一致検索の使い方と注意点を、画像例を交えて詳しく解説します。

VLOOKUP関数とは?

VLOOKUP関数は、表の左端の列で特定の値を検索し、同じ行の別の列から値を返す関数です。

基本的な構文(復習)

Excel

VLOOKUP関数の構文
数式=VLOOKUP(検索値,範囲,列番号,[検索の型])
ひとことで縦に探して値を返す
検索値
探す値です
範囲
表の範囲です
列番号
列番号です
[検索の型]
検索の型です

各引数の意味は以下の通りです。

  • 検索値(必須): 検索する値を指定します。画像例では、セルB2の「得点」が検索値です。
  • 範囲(必須): 検索対象となるセル範囲を指定します。画像例では、D3:F6の「得点評価対応表」が範囲です。
  • 列番号(必須): 返す値がある列の番号を指定します。「範囲」の左端の列が1、右にいくにつれて2、3と増えていきます。画像例では「3」が指定されており、評価(F列)が返されます。
  • 検索の型(省略可能):
    • TRUE(または1):近似一致。検索値が見つからない場合、検索値以下の最大の値が使用されます。「範囲」の左端の列は昇順に並べ替えられている必要があります。
    • FALSE(または0):完全一致。検索値と完全に一致する値のみが返されます。

近似一致検索の仕組み

VLOOKUP関数の近似一致検索(検索の型にTRUEまたは1を指定)は、以下の手順で動作します。

1
「範囲」の左端の列(画像例ではD列の「得点」)を昇順に検索します。
2
「検索値」(画像例ではB2の「得点」)以下の最大の値を探します。
3
見つかった値と同じ行の「列番号」で指定された列の値(画像例ではF列の「評価」)を返します。

重要な注意点: 近似一致検索を使用する場合、「範囲」の左端の列は必ず昇順に並べ替えられている必要があります。並べ替えられていない場合、正しい結果が得られません。

VLOOKUP関数のジェネレータ

VLOOKUP関数のジェネレータで、VLOOKUP関数の動作を確認してみてください。

成績判定

行 A B C
1 成績判定
2 得点 ➡【検索値】
3 評価 ➡【検索結果】 F

数式:

=VLOOKUP(B2, D3:F6, 3, TRUE)

得点・評価基準一覧表

行 D E F
3 0 ~ F
4 60 ~ C
5 70 ~ B
6 80 ~ A

<Excelサンプルデータダウンロード>
Excel VLOOKUP関数:近似一致検索で範囲指定をマスター!「○以上△未満」の条件検索を徹底解説

画像例の具体的な解説

画像例では、セルB3に以下の数式が入力されています。

Excel

VLOOKUP関数の式
数式=VLOOKUP(B2,D3:F6,3,TRUE)
ひとことで縦に探して値を返す
B2
探す値です
D3:F6
表の範囲です
3
列番号です
TRUE
検索の型です

この数式は、以下の処理を行っています。

1
セルB2に入力されている「得点」(例:55)を検索値として使用します。
2
D3:F6の範囲(得点評価対応表)を検索範囲として検索を行います。
3
近似一致検索を行います。

具体例として、得点「55」の場合:

1
D列を上から順に見ていきます。
2
「0」、「60」、「70」と進み、「80」に到達します。
3
「55」は、「55」以下の最大の値である「0」を選択します。
4
「0」と同じ行のF列の値、つまり「F」が返されます。

画像では、得点55点に対して評価「F」が正しく表示されていることが確認できます。

得点から評価を判定する(VLOOKUPの近似一致)式 =VLOOKUP(B2,D3:F6,3,TRUE) の解説図。B3に入力する
B3に =VLOOKUP(B2,D3:F6,3,TRUE) を入力。55 以下で最も大きい得点は 0 → 0 の行の3列目 → F

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

Excelのサンプルデータダウンロード

以下は、上記画像のExcelデータですので、ダウンロードして練習などに使用してください。

練習用Excelファイル(無料ダウンロード)
この記事の解説で使うExcelデータです。数式と練習データが入っているので、本文の式を同じ表で試せます。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り

近似一致検索の活用例

  • 得点に対応する評価の算出(今回の例)
  • 売上高に応じた手数料率の算出
  • 年齢に応じた保険料の算出
  • 在庫数に応じた割引率の算出

近似一致検索の注意点

  • 並べ替え: 「範囲」の左端の列は必ず昇順に並べ替えてください。これが最も重要な注意点です。
  • 検索値が最小値より小さい場合: 検索値が「範囲」の左端の列の最小値より小さい場合、#N/Aエラーが返されます。画像のMemoにも「検索値に負数を指定すると[#N/A]エラーになります。」と記載されています。例えば、得点に-1などを入力するとエラーになります。
  • 検索値が数値以外の場合: 近似一致検索は数値データに対して使用することを想定しています。文字列などを検索値として使用した場合、予期しない結果になる可能性があります。

完全一致検索と近似一致検索の使い分け

特徴完全一致検索(FALSEまたは0)近似一致検索(TRUEまたは1)
検索方法完全に一致する値を検索検索値以下の最大値を検索
並べ替え不要範囲の左端の列は昇順に並べ替えが必要
主な用途IDやコードなどの検索範囲に基づく評価や分類
エラー一致する値がない場合#N/Aエラー検索値が最小値より小さい場合#N/Aエラー

まとめ

VLOOKUP関数の近似一致検索は、「○以上△未満」のような範囲検索を行う場合に非常に便利です。ただし、範囲の並べ替えが必須であること、検索値が最小値より小さい場合にエラーになることなど、いくつかの注意点があります。これらの点を理解した上で、適切に活用することで、データ分析の幅が広がります。

この解説で、VLOOKUP関数の近似一致検索について、より深く理解できたかと思います。この情報を活用し、Excelでのデータ分析をより効率的に行いましょう。

VLOOKUP関数と関連する検索関数の使い分けは、こちらのまとめで整理しています。

基本から確認したいときは、エクセルのVLOOKUPの使い方もあわせてご覧ください。

基本から確認したいときは、エクセルのIFS関数・SWITCH関数の使い方もあわせてご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次