Excel PR

INDEX関数とMATCH関数の基礎~複数条件まで!効率よくデータ抽出を。

内容に広告・プロモーションを含みます

INDEX(インデックス)関数とは?

INDEX関数は、指定した範囲や配列内のセルの値を取得するための関数です。まずはINDEX関数の基本構文を見ていきましょう!

INDEX関数の基本構文

INDEX関数の組み方

INDEX(配列, 行番号, [列番号])

INDEX関数の配列や行番号、列番号の意味は下記になります。

配列: 値を取得する範囲や配列を指定します。
行番号: 配列内で取得したい値の行番号を指定します。
列番号 (オプション): 配列内で取得したい値の列番号を指定します。この引数を省略した場合、INDEX関数は行番号で指定された行の全ての値を返します。

具体的にどういった使い方をするんだろう?
使用例を紹介するね!

INDEX関数の使用例①(行の数値を取得する)

下記のようなデータを例で作ってみたよ!
データの中の3番目の商品を抽出したい場合、下記のようなINDEX関数を組むことができます。

=INDEX(A1:A5, 3)

A1~A5の3番目の値を抽出するようにINDEX関数を入力しているので、「商品B」と表示されれば問題ないです。
商品Bと表示されました!
良かったです。ほかの例も見ていきましょう!

INDEX関数の使用例②(列の数値を取得する)

例①で使ったデータを例②でも使用するよ!
データの中の3行目かつ2列目に入っている値を取得したい場合、
下記のようなINDEX関数を組むことができます。

=INDEX(A1:C7, 3, 2)

A1~C7の3行目かつ2列目の値を抽出するようにINDEX関数を入力しているので、「1500」と表示されれば問題ないです。
「1500」と表示されました!行番号と列番号を指定することができるんですね!
そうですね!ただ、これだけではフィルターをかけたほうが早いので、次のMATCH関数を組み合わせて複雑な条件のデータを抽出してみましょう!

MATCH(マッチ)関数とは?

MATCH関数は指定された値と一致する範囲内の最初のセルの位置(行番号または列番号)を返す関数です。この章では、MATCH関数の基本構文と使用例をご紹介します。

MATCH関数の基本構文

MATCH関数の組み方

MATCH(検索する値, 検索対象の範囲, [比較の方法])

MATCH関数の説明は下記になります。

検索する値: 検索対象となる値を指定します。
検索対象の範囲: 検索される範囲を指定します。
比較の方法 (オプション): 検索対象の範囲が並べられている順序に応じて、検索方法を指定します。省略すると、デフォルトで1が設定され、昇順に並べた場合と同様の検索が行われます。

なんか複雑になってきた。使いこなせるかな。。( ;∀;)
1回使ってみれば、案外簡単!と思うよ!使用例を紹介するね(‘ω’)

MATCH関数の使用例

MATCH関数の使用例で使うデータは下記とします。
今回は「商品C」の行番号を取得したいとします。
下記のようなMATCH関数を組むことができます。

=MATCH("商品C", A2:A5, 0)

商品Cの行番号は3行目なので「3]と表示されればOKです!
「3」と表示されました!
INDEX関数とMATCH関数を一緒に使う想像ができないです、、( ;∀;)
INDEX関数とMATCH関数の基礎ができれば、あとは応用だけなので大丈夫だよ!

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

例①条件に基づいて特定データを抽出

条件に基づいて特定の商品の売上データを抽出するために、下記のデータを用意しました。
例①では商品名が「商品A」に一致する行の最初の売上金額を抽出します
例①で使用する関数

=INDEX(B2:B7, MATCH(“商品A”, A2:A7, 0))

商品Aの最初の売上金額は「1000」となればOKです!

例②INDEX関数とMATCH関数で複数条件を指定

参考にするデータは先ほどと同じにします。
例②では、「商品A」かつ「2024/01/15」の売上金額を抽出します。
例②で使用する関数

=INDEX(B2:B7,MATCH("商品A"&"2024/01/15",A2:A7&C2:C7,0))

「商品A」かつ「2024/01/15」の売上金額は、「2000」と表示されればOKです!
複数の条件に当てはまる数値を出力することができました!
よかったです。フィルターとINDEX関数は用途によって使い分けると便利なのがポイントですね!
データを一時的にフィルタリングして検索する場合は、フィルターを使用することが効果的で、特定の条件に基づいてデータを抽出し、他の計算や処理に使用する場合は、INDEX関数とMATCH関数を使用することが適している。ですよね?
正解です。素晴らしいです!

INDEX関数とMATCH関数|個人的な感想とコツ

INDEX関数とMATCH関数の組み合わせは、Excelの機能の中でも特に強力で便利なツールの一つだと感じています。初めて使った時は、その柔軟性と応用の幅広さに感動しました。

私が感動した点は、INDEX関数の検索値を複数のセルを&で繋げて、MATCH関数の検索値も複数のセルを&で繋げることで、より高度なデータ抽出が出来る点です。この内容をVLOOKUP関数でやるなら、検索値を&で繋げて、範囲では一番左側の列に検索値と同様の&で繋げた文字を作成しなければなりません。また、計算結果がINDEX関数とMATCH関数の組み合わせのほうが早いのもポイントです!

INDEX関数とMATCH関数の組み合わせは、少し複雑ですが数回関数を組めばなれるので、ぜひ試してみてください!