【Excel初心者必見】MATCH関数とは?使い方を分かりやすく解説!

Excel

すもリーマン
すもリーマン

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:商品名から在庫表での位置を調べる(完全一致)

次の商品在庫表があるとします。

商品在庫表

この表から、「消しゴム」が商品名のリストの中で何番目にあるかを調べてみましょう。


  1. 検索値: “消しゴム” (B2からB6の範囲で「消しゴム」を探したいので、検索値は直接文字列で入力します。)
  2. 検索範囲: B2:B6 (商品名が入力されているセル範囲です。)
  3. 照合の種類: 0 (完全一致で探します。)

セルに入力する関数は次のようになります。

=MATCH(“消しゴム”,B2:B6,0)

この関数を入力すると、結果は「3」と表示されます。

これは、「消しゴム」がB2からB6の範囲で上から3番目にあることを示しています。

検索結果

もちろん、検索値をセル参照にすることも可能です。

例えば、検索したい商品名を別のセル(例:E2)に入力し、そのセルを参照することもできます。

=MATCH(E2,B2:B6,0)

セル参照した場合の検索結果
すもリーマン
すもリーマン

この方が、検索するたびに数式を書き換える必要がないから便利!


例2:売上目標達成率からランクを調べる(以上/以下)

でんちゃん
でんちゃん

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

ランク表

達成率が「以上」の場合(照合の種類:1)

達成率が「75%」の場合、上記の左側の表(達成率(以上)の表)で何番目のランクに該当するかを調べます。


  1. 検索値: 75%
  2. 検索範囲: A2:A5 (達成率の列、昇順に並んでいます。)
  3. 照合の種類: 1 (検索値以下の最大の値を探します。)

セルに入力する関数は次のようになります。

=MATCH(75%,A2:A5,1)

結果は「2」となります。

これは、75%が「50%」以上のカテゴリの中で、2番目(50%)に該当することを示します。
つまり、50%以上80%未満はランクCに該当します。

数式と結果

達成率が「以下」の場合(照合の種類:-1)

次に、達成率が「75%」の場合、上記の右側の表(達成率(以下)の表)で何番目のランクに該当するかを調べます。


  1. 検索値: 75%
  2. 検索範囲: D2:D5 (達成率の列、降順に並んでいます。)
  3. 照合の種類: -1 (検索値以上の最小の値を探します。)

セルに入力する関数は次のようになります。

=MATCH(75%,D2:D5,-1)

結果は「2」となります。

これは、75%が「80%」以下のカテゴリの中で、2番目(80%)に該当することを示します。
つまり、80%以下50%超はランクBに該当します。

数式と結果

でんちゃん
でんちゃん

このように、照合の種類「1」と「-1」は、段階的な区分けがあるデータを扱う際に非常に便利です!

ただし、検索範囲の並べ替え順序が重要になるので注意してくださいね。


MATCH関数が活躍するシーンと便利な組み合わせ

でんちゃん
でんちゃん

MATCH関数単体でも便利ですが、他の関数と組み合わせることで、さらに汎用性のある検索が可能です!

MATCH関数が特に役立つシーン

  • VLOOKUP関数やHLOOKUP関数の列番号/行番号を自動化したい時
    • VLOOKUP関数を使う際、参照する列が頻繁に変わる場合、手動で列番号を変更するのは手間ですよね。MATCH関数で列番号を自動的に取得することで、柔軟な検索が可能になります。
  • INDEX関数と組み合わせて、縦横無尽にデータを検索したい時
    • VLOOKUP関数は左端の列から右方向にしか検索できませんが、MATCH関数とINDEX関数を組み合わせることで、どの列からでも、また双方向からデータを検索できるようになります。
  • 条件に合致するデータの位置を特定したい時
    • 例えば、特定の商品の最新の入荷日や、最高売上を記録した日付などが、リストの何番目に位置するかを素早く知りたい場合などに使えます。
  • 入力規則のリスト作成(応用)
    • 特定の条件に応じて表示されるリストの内容を動的に変更したい場合などに応用できます。

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

MATCH関数は、INDEX関数と組み合わせることで真価を発揮します。

でんちゃん
でんちゃん

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

【関連記事】


MATCH関数を使う上での注意点

でんちゃん
でんちゃん

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

  • 検索範囲は1行または1列のみ
    • 前述の通り、検索範囲は必ず1行または1列の範囲を指定してください。複数行・複数列を選択すると「#VALUE!」エラーが表示されます。
  • 大文字・小文字の区別
    • MATCH関数は、半角・全角の区別はしますが、大文字・小文字の区別はしません。例えば、「apple」と「Apple」は同じものとして扱われます。もし大文字・小文字を区別したい場合は、厳密な比較ができる別の方法(FIND関数やEXACT関数などとの組み合わせ)を検討する必要があります。
  • データ型の不一致
    • 検索値と検索範囲内のデータの型が異なると、正しく検索できない場合があります。例えば、数値として入力されている「123」と、文字列として入力されている「”123″」は、見た目は同じでも異なるものとして扱われることがあります。セルの書式設定や、TRIM関数、VALUE関数などを使って調整が必要になる場合があります。
  • #N/Aエラー
    • 検索値が検索範囲内に見つからない場合、「#N/A」エラーが返されます。これは、「該当するデータが見つかりませんでした」という意味です。エラーが表示されても慌てずに、検索値や検索範囲、照合の種類が正しいかを確認しましょう。
でんちゃん
でんちゃん

上記では大文字・小文字の区別をしないことがデータ管理するうえで特に覚えておきたいポイントです!


まとめ:MATCH関数を使いこなしてExcel作業をスムーズに!

でんちゃん
でんちゃん

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

MATCH関数は、

ということをお伝えしてきました。

最初は少し難しく感じるかもしれませんが、実際に手を動かして練習することで、きっとスムーズに使えるようになるはずです。

MATCH関数をマスターすれば、データの中から必要な情報を見つけ出す作業が格段に速く、そして正確になります。

コメント

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