LOOKUP関数の詳細解説(Excel)2(配列形式)

ExcelのLOOKUP関数・配列形式の使い方

この記事では、Excelの「LOOKUP関数・配列形式」の使い方について解説します。配列形式のLOOKUP関数は、検査値と一致する値を配列から検索し、最後の行または列の対応する値を返します。

LOOKUP関数・配列形式の書式

配列形式のLOOKUP関数の書式は以下の通りです。

LOOKUP(検査値, 配列)

引数について説明します。

  • 検査値:配列内で検索する値を指定します。
  • 配列:検索対象の配列を指定します。配列は、最後の行または列に対応する値が結果として返されます。

LOOKUP関数・配列形式の使い方

以下に、LOOKUP関数・配列形式を使った簡単な例を示します。

次の表に、従業員の名前、性別、年齢が記載されているとします。

ABC
1名前性別年齢
2山田34
3佐々岡25
4岸川28

この表から、指定された名前に対応する性別を取得する場合、次のようにLOOKUP関数・配列形式を使用します。

=LOOKUP("佐々岡", A2:C4)

この計算式では、名前のセル範囲(A2:A4)で検査値「佐々岡」を検索し、年齢が記載されている最後の列(C列)の対応する値(「25」)が返されます。

注意点

LOOKUP関数・配列形式を使用する際の注意点をいくつか挙げます。

  • 検査範囲(検査値を検索する範囲)は昇順に並べられていることが望ましいです。昇順でない場合、予期しない結果が返ることがあります。
  • 配列内で検査値が見つからない場合、検査値よりも小さい最も近い値が返されます。
  • 検査値が配列内の最小値よりも小さい場合、LOOKUP関数はエラーを返します。

別の例

次に、LOOKUP関数・配列形式を使用して、商品コードに基づいて商品価格を取得する例を示します。

次の表に、商品コードと商品価格が記載されているとします。

AB
1商品コード価格
210012000
310023000
410032500

この表から、指定された商品コードに対応する価格を取得する場合、次のようにLOOKUP関数・配列形式を使用します。

=LOOKUP(1002, A2:B4)

この計算式では、商品コードのセル範囲(A2:A4)で検査値「1002」を検索し、価格が記載されている最後の列(B列)の対応する値(「3000」)が返されます。

追加のサンプル:検査値が完全一致していない場合

次に、検査値が検索対象と完全一致していない場合のLOOKUP関数・配列形式を使ったサンプルを示します。

次の表に、製品ID、製品名、在庫数が記載されているとします。

ABC
1製品ID製品名在庫数
21101商品A25
31103商品B35
41105商品C15
51107商品D40
61109商品E20

この表から、指定された製品IDに対応する在庫数を取得する場合、次のようにLOOKUP関数・配列形式を使用します。

=LOOKUP(1106, A2:C6)

この計算式では、製品IDのセル範囲(A2:A6)で検査値「1106」を検索しようとしますが、一致する値はありません。そのため、検査値よりも小さい最も近い値が返されます(超えない範囲で最も小さい値)。この場合、最も近い値は「1105」(商品C)となります。

したがって、在庫数が記載されている最後の列(C列)の対応する値(「15」)が返されます。