INDEX関数とMATCH関数

エクセル

INDEX関数

INDEX関数はテーブルまたはセル範囲にある値、あるいはその値のセル参照を返します。

INDEX(参照, 行番号, [列番号], [領域番号]) 

引数内容
配列セル範囲または配列定数を指定する
・配列が 1 行または 1 列のみの場合、それぞれ行番号または列番号を省略することができる
・配列が複数行および複数列で構成され、行番号または列番号のどちらか一方しか指定されていない場合、配列の中にある行または列全体の配列が返される
行番号値を返す行を数値で指定する
[列番号]値を返す列を数値で指定する
[領域番号]行番号と列番号の共通部分を返す参照の範囲を選択する

下記は、行番号と列番号を指定してセルの値を取得する例です。

次は、複数の配列と領域番号を指定した例です。

MATCH関数

MATCH関数は、範囲のセルの範囲で指定した項目を検索し、その範囲内の項目の相対的な位置を返します。INDEX関数と組み合わせることが多い関数です。

MATCH(参照, 行番号, [列番号], [領域番号]) 

引数内容
検索値検索範囲の中で照合する値を指定する
検索範囲検索するセルの範囲を指定する
[照合の型]検索範囲の中で検索する方法を指定する
1:検索値以下の最大値を検索する(デフォルト値)
0:検索値と等しい最初の値を返す
-1:検索値以上の最小値を検索する

下記は、単純に検索値に対して完全一致で、相対的な行数を取得する例です。

次は、照合の型を-1と1の例です。「-1」を指定する際の注意点は、データを降順に並べることです。

INDEX関数とMATCH関数を組み合わせることにより、VLOOKUPやHLOOKUPのように検索することができます。以下は、MATCH関数で対象の行を検索し、INDEX関数でセルの値を返す例です。

コメント