
Excelで特定のデータがどこにあるか探すのが大変…

データ量が増えれば増えるほど、手作業での検索は時間もかかりますし、ミスも増えてしまうよね。
そんな時はMATCH関数を使おう!
MATCH関数は、
指定したデータがリストの何番目にあるかを瞬時に教えてくれる便利な関数です。

MATCH関数ってVLOOKUP関数やINDEX関数とどう違うの?

具体的にどんな時に使えば便利なの?

すもリーマンのような疑問をお持ちの方も多いかもしれません。

MATCH関数ってどんな関数?
MATCH関数は、
「指定した値が、範囲内のどこにあるか(何番目か)」を教えてくれる関数です。

例えば、クラスの名簿から「佐藤さん」が上から何番目にいるかを調べたい時に、MATCH関数を使えば「5番目」といったように、その位置を数字で返してくれるんだね!
VLOOKUP関数が「指定した値に対応する別の値」を探すのに対し、
MATCH関数は「指定した値そのものの位置」を特定するのが主な役割です。
MATCH関数の基本形
MATCH関数の書式は次の通りです。
=MATCH(検索値, 検索範囲, 照合の種類)
それぞれの引数について詳しく見ていきましょう。
- 検索値 (lookup_value)
- 検索したい値、または検索したい値が入力されているセルを指定します。
- 数値、文字列、論理値(TRUE/FALSE)などを指定できます。
- 文字列を指定する場合は、半角のダブルクォーテーション(”)で囲む必要があります。(例:”東京”)
- 検索範囲 (lookup_array)
- 検索値を探したい範囲を指定します。
- 必ず1行または1列の範囲を指定してください。複数行・複数列の範囲を指定するとエラーになります。
- 範囲は昇順、降順、または順不同のいずれでも構いませんが、照合の種類によって適切な並べ替えが必要です。
- 照合の種類 (match_type)
- 検索値と検索範囲のデータをどのように照合するかを指定します。
- 以下の3つの値を指定できます。
0
(完全一致)- 検索値と完全に一致するデータを探します。
- 検索範囲のデータが並べ替えられていなくても使えます。
- 最もよく使う照合の種類です。
1
(以上)- 検索値以下の最大の値を探します。
- 検索範囲は昇順に並べ替えておく必要があります。
- もし完全に一致する値が見つからない場合、検索値より小さく、かつ最も検索値に近い値が返されます。
-1
(以下)- 検索値以上の最小の値を探します。
- 検索範囲は降順に並べ替えておく必要があります。
- もし完全に一致する値が見つからない場合、検索値より大きく、かつ最も検索値に近い値が返されます。

通常は「0(完全一致)」を使うことが多いので、まずはこの設定から覚えていきましょう!
MATCH関数の基本的な使い方を具体例で解説!

それでは、具体的なデータを使ってMATCH関数の使い方を見ていきましょう!
例1:商品名から在庫表での位置を調べる(完全一致)
次の商品在庫表があるとします。

この表から、「消しゴム」が商品名のリストの中で何番目にあるかを調べてみましょう。
- 検索値: “消しゴム” (B2からB6の範囲で「消しゴム」を探したいので、検索値は直接文字列で入力します。)
- 検索範囲: B2:B6 (商品名が入力されているセル範囲です。)
- 照合の種類: 0 (完全一致で探します。)
セルに入力する関数は次のようになります。
=MATCH(“消しゴム”,B2:B6,0)
この関数を入力すると、結果は「3」と表示されます。
これは、「消しゴム」がB2からB6の範囲で上から3番目にあることを示しています。

もちろん、検索値をセル参照にすることも可能です。
例えば、検索したい商品名を別のセル(例:E2)に入力し、そのセルを参照することもできます。
=MATCH(E2,B2:B6,0)


この方が、検索するたびに数式を書き換える必要がないから便利!
例2:売上目標達成率からランクを調べる(以上/以下)

今度は、照合の種類「1」と「-1」を使う例を見てみましょう。 次の売上目標達成率のランク表があるとします。

達成率が「以上」の場合(照合の種類:1)
達成率が「75%」の場合、上記の左側の表(達成率(以上)の表)で何番目のランクに該当するかを調べます。
- 検索値: 75%
- 検索範囲: A2:A5 (達成率の列、昇順に並んでいます。)
- 照合の種類: 1 (検索値以下の最大の値を探します。)
セルに入力する関数は次のようになります。
=MATCH(75%,A2:A5,1)
結果は「2」となります。
これは、75%が「50%」以上のカテゴリの中で、2番目(50%)に該当することを示します。
つまり、50%以上80%未満はランクCに該当します。

達成率が「以下」の場合(照合の種類:-1)
次に、達成率が「75%」の場合、上記の右側の表(達成率(以下)の表)で何番目のランクに該当するかを調べます。
- 検索値: 75%
- 検索範囲: D2:D5 (達成率の列、降順に並んでいます。)
- 照合の種類: -1 (検索値以上の最小の値を探します。)
セルに入力する関数は次のようになります。
=MATCH(75%,D2:D5,-1)
結果は「2」となります。
これは、75%が「80%」以下のカテゴリの中で、2番目(80%)に該当することを示します。
つまり、80%以下50%超はランクBに該当します。


このように、照合の種類「1」と「-1」は、段階的な区分けがあるデータを扱う際に非常に便利です!
ただし、検索範囲の並べ替え順序が重要になるので注意してくださいね。
MATCH関数が活躍するシーンと便利な組み合わせ

MATCH関数単体でも便利ですが、他の関数と組み合わせることで、さらに汎用性のある検索が可能です!
MATCH関数が特に役立つシーン
INDEX関数とMATCH関数の組み合わせ
MATCH関数は、INDEX関数と組み合わせることで真価を発揮します。

以前の記事でINDEX関数とMATCH関数の組み合わせについて詳しく解説していますので、気になる方はぜひ下記の記事も参考にしてみてくださいね。
【関連記事】
MATCH関数を使う上での注意点

MATCH関数を使う上で、いくつか注意しておきたい点があります。

上記では大文字・小文字の区別をしないことがデータ管理するうえで特に覚えておきたいポイントです!
まとめ:MATCH関数を使いこなしてExcel作業をスムーズに!

この記事では、ExcelのMATCH関数について、その基本的な使い方から具体的な活用例、そして使用する上での注意点までを詳しく解説しました。
MATCH関数は、

ということをお伝えしてきました。
最初は少し難しく感じるかもしれませんが、実際に手を動かして練習することで、きっとスムーズに使えるようになるはずです。
MATCH関数をマスターすれば、データの中から必要な情報を見つけ出す作業が格段に速く、そして正確になります。
コメント