検索/行列関数

検索値を含む行から指定した列を野データを求める VLOOKUP関数

書式

VLOOKUP(検索値、範囲、列番号、検索の型)

VLOOKUP関数は、「範囲」で指定した表の左端列を検索し、「検索値」と一致する値がある行と、「列番号」で指定した列とが交差する位置のセルの値を返す関数です。
「検索の型」で「0」を指定すると「検索値」と完全に一致する値だけ検索します。
「0」以外を指定するか又は省力した場合は、「検索値」と一致する値がない場合に、「検索値」未満の最大値を検索します。
「0」以外を指定するか又は省力した場合は、に左端のデータは、昇順に並べ替えておく必要があります。

●<使用例> =VLOOKUP(B10、A2:D7、4、0)

「範囲」の中から、「行・列」を指定して、指定した位置にあるデータを取り出す INDEX関数

INDEX 関数には、配列形式とセル範囲形式の 2 種類があります。ここでの説明は、セル範囲形式になります。

書式(セル範囲形式)

INDEX(範囲、行番号、列番号、領域番号)

「範囲」の中から、指定した位置にあるデータを取り出す。範囲内の「上から何行目か」、「左から何列目か」をそれぞれ、引数に「行番号」と「列番号」に指定する。※領域は1つの場合は、省略可能

●<使用例01> =INDEX(A2:C5、2、3)

説明(結果)
A2:C5「範囲」の範囲の中から、2行目、3列目の位置にあるデータを取り出します。(38)

●<使用例02> =INDEX((A2:C5、A6:C8)、2、1、2))

説明(結果)
領域番号「2」の「範囲」の中から、2行目、1列目にあるデータを取り出します。(ナッツ)
※領域番号は、「範囲」で2つの領域を設定し、「範囲」A2:C5は領域番号「1」になり、「範囲」A6:C8は領域番号「2」になります。

●<使用例03> =SUM(INDEX(A2:C8、0、3))

説明(結果)
「範囲」A2:C8の3行目のデータを合計します。(180)

※行番号または列番号に 0 (ゼロ) を指定すると、列または行全体の参照がそれぞれ返されます。

範囲内での位置を調べる MATCH関数

書式

MATCH(検索値、検索範囲、照合の型)

「検索値」を「検索範囲」内で検索し、先頭から何番目にあるかを数値で示す。「照合の型」を「0」と指定すると、「検索値」と完全に一致する値だけを該当する値とみなす。
「1」と指定するか省略すると、「検索値以下で最も近い値」を該当する値とみなし(検索値は昇順に並べておく)、「−1」と指定すると、「検索値以上で最も近い値」を該当する値と見なす(検索値は降順に並べておく)

●<使用例01>  =MATCH(39,B2:B5,1)

B2:B5 のセル範囲から 39 を検索しますが、一致する値がないため、この値以下の最大の値 38 の位置が返されます (2)

●<使用例02>  =MATCH(41,B2:B5,0)

B2:B5 のセル範囲から 41 の位置を調べます (4)

●<使用例03>  =MATCH(40,B2:B5,-1)

照合の型に-1を指定すると「検索値以上で最も近い値」を該当する値を返しますが、
B2:B5 のセル範囲は降順に並べ替えられていないため(昇順に並んでいる)、エラーが返されます (#N/A)

戻る進む