Excel【VLOOKUP関数とは?】
ExcelのVLOOKUP関数は、表やデータ範囲の中から特定の値を検索し、それに対応するデータを取得するための関数です。「VLOOKUP」は「Vertical Lookup」の略で、縦方向にデータを検索するという意味を持ちます。主に、表形式のデータで「検索キー」に基づいて値を取得したいときに使用されます。
VLOOKUP関数の基本構文
=VLOOKUP(検索値, 範囲, 列番号, 検索方法)
引数の意味
❶検索値
検索対象となる値です。
例えば、顧客IDや商品コードなどのデータを指定します。
❷範囲
検索対象となるデータの範囲を指定します。
この範囲の1列目から検索値を探します。
❸列番号
検索値が見つかった場合、その行の中で取得したいデータがある列番号を指定します。
範囲内の左から1列目を「1」とカウントします。
❹検索方法
TRUEまたはFALSEを指定します。
TRUE(省略可能)
近似一致を使用する場合。
検索値と一致しない場合、近い値が返されます。
(データは昇順に並んでいる必要があります)
FALSE
完全一致を使用する場合。
検索値と完全に一致するデータのみが返されます。
実際の使用例
サンプルデータ
次のようなデータがあるとします。
例1(基本的なVLOOKUP)
目的
商品コード「A002」に対応する商品名を取得する。
式:
=VLOOKUP("A002", A1:C4, 2, FALSE)
解説
結果
スマートフォン
例2(価格を取得)
目的
商品コード「A001」に対応する価格を取得する。
式
=VLOOKUP("A001", A1:C4, 3, FALSE)
結果
120,000
例3(価格を取得)
以下のようなデータがあるとします。
得点が72点の場合、評価を取得したいとします。
式
=VLOOKUP(72, A1:B4, 2, TRUE)
結果
合格
(72は60以上80未満なので「合格」が返されます)
注意点
❶検索列は左端である必要がある
VLOOKUPは、指定した範囲の最左列から値を検索します。
検索列が範囲の左側にない場合、エラーになります。
❷検索方法に注意する
・FALSEを指定すると、完全一致のデータしか取得できません。
一致しない場合は#N/Aエラーが表示されます。
・TRUEを使用する場合、検索列のデータが昇順に並んでいないと正しい結果が得られません。
❸動的な範囲指定が必要な場合
データ範囲が動的に変化する可能性がある場合は、テーブル形式や名前付き範囲を使用することで管理が簡単になります。
❹列番号のハードコーディングに注意
列番号を直接指定すると、後で列の追加や変更がある場合に正しいデータを取得できなくなることがあります。
INDEX関数やMATCH関数を組み合わせると柔軟性が増します。
VLOOKUP関数の限界と代替案
VLOOKUPは便利ですが、次のような制約があります。
・左側の列しか検索できない。
・データが大きい場合、処理速度が遅くなる可能性がある。
・複数条件検索が難しい。
これらの制約を克服するために、次の関数が利用できます。
XLOOKUP関数(Excel 365以降で利用可能)
より柔軟な検索が可能です。
INDEX + MATCH関数
列方向や複数条件に対応できます。
まとめ
VLOOKUP関数は、Excelでデータ検索や集計を行う際に非常に便利な関数です。
基本の使い方をマスターし、注意点を押さえれば、業務や学習に役立てることができます。
さらに、代替手段も活用すれば、より柔軟なデータ操作が可能です。