INDEXとMATCHの組み合わせでデータ取得を改善

先日、INDEX関数の紹介しました。

先日の記事では『【INDEX関数】複数表の中から値を取得してみよう』では、

INDEX関数を使用して「2013年Mexico」の利益を取得しましたが、第2引数「行番号」と第3引数「列番号」は直接入力で対応しました。

この方法はミスが起こりやすいため、「直接入力」ではなく「セル参照」をする方法が望ましいところです。

そこで、この記事ではINDEX関数とMATCH関数の組み合わせ方法を紹介します。

MATCH関数を使用することにより、INDEX関数の第2引数「行番号」と第3引数「列番号」をセル参照できます。

「直接入力」と「セル参照」の違いは下記の記事『Excel関数の直接入力とセル参照とは』で取り上げています。

INDEX関数とMATCH関数に関して

INDEX関数は、範囲から指定した行と列のセルを取得する関数です。※[]は省略可です

1つ目の型: INDEX(配列, 行番号, [列番号]) 
2つ目の型: INDEX(参照, 行番号,[列番号],[領域番号])
※[]は省略可ですCode language: CSS (css)
https://biz-data-analytics.com/excel/1426

MATCH関数は、範囲内から指定した値を検索する関数です。※[]は省略可です

MATCH(検索値,検索範囲,[照合の型]) ※[]は省略可ですCode language: CSS (css)
MATCH関数はマッチングさせる関数のことである


詳細の解説は下記をご覧ください。

【INDEX関数】複数表の中から値を取得してみよう | データ分析ドットコム

INDEX関数の「参照型」を紹介します。「参照型」を利用すると、例えば、複数表の中から、指定した値のみを抽出することができます。

MATCH関数の構文-特定の値がどこにあるかを見つける- DL可

Excel関数の使用頻度の高い「MATCH関数」を紹介します。 MATCH関数は、VLOOKUP関数やINDEX関数等と組み合わせると、さらに威力が増します。 本記事はその前段に当たる、…

INDEX関数とMATCH関数の組み合わせ

INDEX関数とMATCH関数を組み合わせることで、「直接入力」ではなく「セル参照」できます。

例を以下に示します。

「2013年Mexico」の売上を取得する関数式は、次になります。

INDEX(A4:C9, MATCH("Mexico",A4:A9,0), MATCH("2013",A4:C4,0))Code language: CSS (css)

関数式を分解して解説します。

INDEX(A4:C9Code language: CSS (css)


上記の関数式で、領域を取得しています。

MATCH("Mexico",A4:A9,0)Code language: JavaScript (javascript)

上記の関数式で、行番号を取得しています。

MATCH("2013",A4:C4,0)Code language: JavaScript (javascript)


上記の関数式で、列番号を取得しています。

MATCH関数は、指定した値が含まれている位置を検索し、その位置を返します。
この位置を、INDEX関数の第2引数「行番号」と第3引数「列番号」として指定することで、目的の値を取得できます。

このように組み合わせることで、直接入力による「ミス」を防ぐことができます。

最後に

今回はINDEX関数とMATCH関数の組み合わせることで、より確実かつミスのない方法を紹介しました。

「直接入力」の代わりに、「セルの参照」を使用することができます。

このことによって、データを入力するときにミスが生じにくくなります
また、データが変更されたときに自動的に更新されるので、作業が効率化されます。

なお、MATCH関数の組み合わせの考え方は、VLOOKUP関数とHLOOKUP関数などでも応用できます。
MATCH関数と組み合わせることができる関数を列挙します。

  1. INDEX関数
  2. HLOOKUP関数
  3. VLOOKUP関数
  4. OFFSET関数
  5. ADDRESS関数

これらの関数とMATCH関数を組み合わせることで、データの検索・取得や、データの位置(行番号、列番号)の把握などができます。

今後もExcel関数に関する情報を発信していく所存ですので、お楽しみに!