MATCH関数入門!データの位置を瞬時に把握する方法

MATCH関数 関数
この記事は約7分で読めます。

MATCH関数とは

MATCH関数指定した範囲で検索したい値が、何行目・もしくは何列目に入っているか、それぞれ数値で返してくれる関数です。

MATCH関数を単体で使用する機会は少ないかもしれませんが、他の関数と一緒に組み合わせて使用することで、とても便利な働きをしてくれます。

MATCH関数をより便利に使用するために、ここではMATCH関数の基本的な動きをご紹介したいと思います。

練習用エクセルファイルを用意したので、必要な方は下記よりダウンロードしてくださいね。

基本の動き

練習用ファイルを使って、実際にMATCH関数を組んでみましょう。

検索値を何行目か確認する

A列~B列にデータ一覧があり、今回はこのデータが検索範囲となります。
D2セルに検索値を入力し、その検索値が何行目にあるかをE2セルに表示させたいと思います。

まずE2セルにMATCH関数を入れていきましょう。

= MATくらいまで入れると、一番上に候補が上がってくるので、MATCH関数を選択してキーボードの Tab キーを押して使用する関数を確定させます。

MATCH関数_基本の動き
MATCH関数_基本の動き

使用する関数を確定させたら、第1引数を入力します。
第1引数は検査値で、検索したい文字列、もしくは検索したい文字列が入力されているセルを指定します。

今回はセル指定にしたいと思いますので、D2セルを選択するか、直接D2と入力します。

MATCH関数_基本の動き
MATCH関数_基本の動き

◆注意してね◆
・文字列の場合はダブルクオテーション で文字列を挟む
・セルの場合は必要に応じて絶対参照をつける

第1引数を指定したら、カンマ , を打って第2引数に進みます。
第2引数は検査範囲となり、第1引数で指定した検査値を検索する範囲を入力します。

検索したいのが、店舗名だった場合はA2~A4セル、金額だった場合はB2~B4セルとなります。

MATCH関数_基本の動き
MATCH関数_基本の動き
MATCH関数_基本の動き
MATCH関数_基本の動き

第2引数を指定したら、カンマ , を打って第3引数に進みます。
第3引数は照合の種類となり、「以下・完全一致・以上」から選びます。

それぞれ、どのように動くのか詳細を見てみましょう。

1 – 以下

検査値以下の最大値を検索します。検査範囲は昇順で配置しておく必要があります。

今回のようにデータが複数列に入っている場合、普通に昇順フィルターをしても、正しく並べ替えにならないケースがあるので、リボンメニューの「並べ替えとフィルター」を開いて、ユーザー設定の並べ替えをしましょう。

ユーザー設定の並べ替え方法が分かる方は
スキップして第3引数の入力に進んでくださいね。

◆ユーザー設定の並べ替え方法◆

並べ替えたいデータ内のどこかをクリックして CtrlA でデータ全体を選択します。

ユーザー設定の並べ替え
ユーザー設定の並べ替え

データ全体を選択した状態でリボンメニューのホームタブ内、右側にある「並べ替えとフィルター」を開き、「ユーザー設定と並べ替え」をクリックします。

ユーザー設定の並べ替え
ユーザー設定の並べ替え
ユーザー設定の並べ替え
ユーザー設定の並べ替え

「並べ替え」のダイアログボックスが出てきたら、「先頭行をデータの見出しとして使用する」にチェックを入れ、最優先されるキーを指定しますが、ここでは「売上」とします。
続けて並べ替えのキーを「セルの値」、順序を昇順なので「小さい順」としてOKをクリックします。

ユーザー設定の並べ替え
ユーザー設定の並べ替え

これでデータが昇順に並べ替えられました。

ユーザー設定の並べ替え
ユーザー設定の並べ替え

では、準備ができたのでE2セルにMATCH関数を完成させていきましょう。

ここでは第3引数の照合の種類を「以下」にしたいので、分かりやすく検索値は「売上」にします。
なので、第2引数の検査範囲をB2~B4とし、カンマ , を打って第3引数を「以下」である「1」を入力します。

MATCH関数_基本の動き
MATCH関数_基本の動き

最後にカッコを閉じて Enter を押したら完成です。

D2セルの検索値に何も入っていないので「#N/A」のエラーが出ていると思います。

MATCH関数_基本の動き
MATCH関数_基本の動き

D2セルに検索値として「3,500,000」と入力してみます。
第3引数の「以下」は検査値以下の最大値を検索してくれるので、検査範囲B2~B4セルにある「3,500,000以下」の最大値である「3,258,928」が入力されている位置「1」が返ってきました。

MATCH関数_基本の動き
MATCH関数_基本の動き
=MATCH(検索したい値(セルでもOK),検索範囲,検索範囲で検索値以下の最大値を検索)
=MATCH(D2,B2:B4,1)

0 – 完全一致

検査値に等しい最初の値を検索します。検査範囲は任意の順序で指定できます。

MATCH関数を使用する際、多くの場合はこの「完全一致」を指定すると思います。

ここでは第3引数の照合の種類を「完全一致」にしたいので、分かりやすく検索値は「店名」にします。
なので、第2引数の検査範囲をA2~A4とし、カンマ , を打って第3引数を「完全一致」である「0」を入力します。

MATCH関数_基本の動き
MATCH関数_基本の動き

最後にカッコを閉じて Enter を押したら完成です。

第3引数の照合の種類「以下」の場合と同様に、D2セルの検索値に何も入っていないため「#N/A」のエラーが出ていると思いますので、D2セルに検索値として「福岡」と入れてみましょう。

第3引数の「完全一致」は検査値に等しい値を検索してくれるので、検査範囲A2~A4セル内で「福岡」が入力されている位置「2」が返ってきました。

MATCH関数_基本の動き
MATCH関数_基本の動き
=MATCH(検索したい値(セルでもOK),検索範囲,検索範囲で検索値と等しい値を検索)
=MATCH(D2,A2:A4,0)

-1 – 以上

検査値以上の最小値を検索します。検査範囲は降順で配置しておく必要があります。

ここでは検査範囲を降順に並べ替える必要があるので、ユーザー設定の並べ替えの際に、順序を「大きい順」にしましょう。

「ユーザー設定の並べ替え」はこちらで紹介しています

では、準備ができたのでE2セルにMATCH関数を完成させていきましょう。

ここでは第3引数の照合の種類を「以上」にしたいので、分かりやすく検索値は「売上」にします。
なので、第2引数の検査範囲をB2~B4とし、カンマ , を打って第3引数を「以上」である「-1」を入力します。

MATCH関数_基本の動き
MATCH関数_基本の動き

最後にカッコを閉じて Enter を押したら完成です。D2セルに検索値として「3,500,000」と入力してみます。

第3引数の「以上」は検査値以上の最小値を検索してくれるので、検査範囲B2~B4セルにある「3,500,000以上」の最小値である「3,682,906」が入力されている位置「2」が返ってきました。

MATCH関数_基本の動き
MATCH関数_基本の動き

この第3引数は任意の引数となり、省略することが可能です。
省略した場合は自動的に「以下」が選択されますので
他の照合方法を指定したい場合は、必ず引数を指定しましょう。

=MATCH(検索したい値(セルでもOK),検索範囲,検索範囲で検索値以上の最小値を検索)
=MATCH(D2,B2:B4,1)

指定した文字を含む値を検索(あいまい検索)

MATCH関数はワイルドカードを使った「あいまい検索」が可能です。

ワイルドカードの記事は準備中なので
以前ご紹介した「XLOOKUP応用編」の記事を参考にしてください

こちらも練習用ファイルを使って実際にMATCH関数を組んでみましょう。

検査値をD2セル、検査範囲を店名として完全一致検索MATCH関数を入力し Enter を押して完成させます。

MATCH関数_基本の動き
MATCH関数_基本の動き

D2セルに検査値として東から始まる任意の文字列という意味合いの「東*」と入力します。
すると東京が入力されている位置「3」が返ってきました。

MATCH関数_基本の動き
MATCH関数_基本の動き

まとめ

MATCH関数の基本的な動きをご紹介しました。

冒頭にも書いた通り、MATCH関数単体では使用する機会はほとんどないと思いますが、他の関数と一緒に組むことで、少し複雑なデータ集計などもできるようになるので、まずMATCH関数の基本をしっかり身に着けて、応用に進みましょう!

タイトルとURLをコピーしました