2023年12月20日【ID:0】
【Excel】マトリックス表から値を抽出する方法
以下のようなマトリックス表があります。
この表の縦軸と横軸を指定することで、2つの項目が重なる値を抽出する方法について解説していきます。
こちらでは、以下の出発と到着の項目に値を入力することで、2つが重なる値を金額として抽出するように実現していきます。
まずは、以下のように、出発と到着に適当な値を入力します。
次に、入力した値が、それぞれ先頭から何番目の値なのかを数式で求めていきます。
その際に活用する関数は、MATCH関数になります。
=MATCH(検査値, 検査範囲, [照合の種類])
// 指定された[照合の種類]に従って、[検査範囲]の先頭から[検査値]が見つかった位置を返す
// [照合の種類] 0:完全一致、1:以下、-1:以上
出発と到着の位置を隣のセルに求めると以下のようになります。
=MATCH(C9,C2:F2,0)
=MATCH(C10,B3:B6,0)
このように求めることができました。
次に、求めた位置情報を活用して、金額を抽出していきます。
セルC3からF6の範囲から、4行目2列目の値を抽出するには、INDEX関数を活用します。
=INDEX(参照, 行番号, 列番号)
// 指定した[参照]範囲の指定した[行番号]と[列番号]に位置する値を返す
実際に求めると、以下のようになります。
=INDEX(C3:F6,D10,D9)
このように抽出することができました。
セルD9とD10に関しては、直接、MATCH関数を代入することで、以下のように1つの数式にまとめることができます。
=INDEX(C3:F6,MATCH(C10,B3:B6,0),MATCH(C9,C2:F2,0))
このように、INDEX関数とMATCH関数を組み合わせることで、マトリックス表から値を抽出することができます。