INDEX+MATCH関数で横(列)方向を検索する方法
ここでは、INDEX+MATCH関数で横(列)方向に検索する方法を解説します。
一般的によく使われるのは、縦(行)方向への検索なので、普段のクロス抽出の逆になります。
1.横(列)方向に検索抽出するとは
まずは、「横(列)方向に検索する」とどういうことができるのか、例で確認してみましょう。
上の表は、商品別最安値確認表です。
縦(行)に商品名、横(列)に業者ごとの見積金額が入力されています。
そして、「最安値」を表示させているE列には、「範囲内で最小の数値を返す」MIN関数を使っています。
INDEX+MATCH関数で横方向に検索できると、E列の「最安値」を提示している「業者名」を抽出することができます。
関数の動きとしては、「横方向に検索し、該当した列の任意の行の値をとる」流れになります。
2.関数の組み合わせ方を解説
横方向を検索し縦方向で抽出できる数式の形は、次の通りです。
横方向に検索する時のポイントは、INDEX関数の引数「列番号」にMATCH関数を使い、「行番号」に抽出したい行番号を入れることです。
では、先ほどの表をとセルF5に入力した数式を見ながら、引数の入れ方を確認してみましょう。
2-1.配列
配列には「元の表の範囲」を指定します。
例では、「業者名と値が入った範囲」になるので、「B4:D9」となります。
2-2.行番号
行番号には、「配列の中で求める値が入った行番号」を指定します。
「配列の中で」がポイントで、配列で指定した範囲の中で何番目の行か?ということです。
例では、業者名が配列で指定した範囲の内の1行目になっているため「1」としています。
2-3.検査値
検査値には、「検索値」を指定します。
例では、最安値の「100」が検索値なので、その値が入ったセル番号「E5」に$マークを付けています。
ちなみに、$マークはつけると「絶対参照」になります。
絶対参照にすると、セルF5に入力した数式を下のセルにコピーしても数式を手直ししなくてよくなります。
2-4.検査範囲
検査範囲には、検査値が入っている範囲を指定します。
例では、B列からD列までの値を中から検索したいので「B5:D5」としています。
2-5.数式の全体像
以上の結果、例の場合F5の入力した数式は、
=INDEX(B4:D9,1,MATCH($E5,$B5:$D5,0))
となっています。
このように、INDEX関数とMACTH関数を使えば、表を元に「横方向で検索し、縦方向で抽出する」ことができます。
試してみてください。以上、参考になれば幸いです。
次のページでは、INDEX+MATCH関数で別シートや別ファイルからデータを抜き出す方法を解説します。よかったら参照してください。
【口コミ・評判のいいExcel本の紹介】
INDEX+MATCH関数の、他の記事へのリンクはこちらです。
- INDEX+MATCH関数その他の記事へのリンクはこちら