分かりやすいMATCH関数の使い方|引数指定のポイント

ここでは、MATCH関数の基本的な使い方を解説します。

 

MATCH関数とはどのような関数か、その動きと数式の形、引数の入れ方の説明です。

 

なお、INDEX関数とMATCH関数の組み合わせについての説明は、次のページでしています。

→ エクセル INDEX+MATCH関数の使い方|条件一致の値を返す|複数条件も

本記事はアフィリエイト広告を含みます

1.MATCH関数とは?動きを確認

まずは、MATCH関数とはどのような関数か、その基本的な動きを見てみます。

 

1-1.MATCH関数とは

MATCH関数とは、「検査範囲内を検索し、検査値と一致する要素の、配列内での相対的な位置を表す数値を返す」関数です。

 

もっと分かりやすく言うと、「指定範囲内での検査値の位置を返す」関数です。

 

例えば、商品リストからある商品を検索した時、上から5番目にありますよと「5」を返してくるイメージです。

 

1-2.MATCH関数の動きを確認

次に、MATCH関数の基本的な動きを例で見てみます。

上の表から「範囲における『元木 一さん』の縦(行)の位置」を知りたいとします。

 

検査値は元木さんを探したいので「元木 一(セルH3)」、検査範囲は検査値を検索する範囲なので「B4:B8」、検索方法は完全一致なので「0」となります。

 

これらをMATCH関数の引数に当てはめると、数式は次の通りです。

=MATCH(H3,B4:B8,0)

 

結果、検査範囲内における元木 一さんの縦の位置である「3」が返ってきます。

 

範囲内で検査値が何番目にあるかを返す。

 

これがMATCH関数の動きです。

2.数式の形と引数の入れ方

次に、MATCH関数の構文(数式の形)と引数の入れ方を見てみます。

 

2-1.MATCH関数の構文

MATCH関数の構文(数式の形)は、次の通りです。

=MATCH(検査値,検査範囲,照合の種類)
項目名 指定する内容 指定の例

検査値

検索したい値を指定 1
検査範囲 検索する範囲を指定 A4:A8
照合の種類 欲しいデータのある列の番号を指定 0

MATCH関数を使うには、「検査値」、「検査範囲」、「照合の種類」の3つを指定する必要があります。

 

2-2.引数指定のポイント

では、3つの引数の入れ方をそれぞれ見てみましょう。

  

(1)検査値

検査値には「検索したい値」を指定します。

 

検査値は、「数式に直接入力する」方法と「セル参照する」方法の2パターンがあり、ポイントはそれぞれ次の通りです。

 

① 数式に直接入力

数式に直接検査値を入力する場合、値の型ごとに次のことに気を付ける必要があります。

注意点
  • 数値:そのまま入力
  • 文字列:「"」で囲む
  • 日付:「"」で囲む

 

数式の例は、それぞれ次の通りです。

  • 数値:=MATCH(3,B4:B8,0)
  • 文字列:=MATCH("テスト",B4:B8,0)
  • 日付:=MATCH("4/1",B4:B8,0)

 

② セル参照

条件値が入ったセル番号を指定する場合、どんな条件値の型でもセル番号をそのまま入力します。

 

例えば、セルD1に条件値を入力した場合には、次のようになります。

=MATCH(D1,B4:B8,0)

 

(2)検査範囲

検査範囲には「検査値を検索する範囲」を指定します。

 

ポイントは、次の通りです。

ポイント
  • 上と下のセル番号を「:」でつなぐ(「A4:A8」)
  • 必ず1列で指定する

(3)照合の種類

照合の種類では「検索方法」を指定します。

 

検索方法は全部で3種類あり、次の通りです。

入力値 検索方法 条件
 1 検査値以下の最大値で検索 検査範囲を昇順に並べ替えておくこと
 0 検査値との完全一致で検索 なし
-1 検査値以上の最小値で検索 検査範囲を降順に並べ替えておくこと

検査値との完全一致で検索する場合には「0」を指定します。ほとんどの場合、これが使われます。

 

そして、検査値と「一番近い値を検索する」のが「1」と「-1」です。

 

「1」は「検査値よりも一つ小さい値」、「-1」は「検査値よりも一つ大きい値」を検索します。

 

これを「近似値検索」と言いますが、ただしこの機能を使うためには条件があります。

 

それは「検査範囲のデータの並び順」です。

 

「『1』は昇順(大きいものから順)、『-1』は降順(小さいものから順)で並べる必要があります。

 

並んでいないと意図しない値が返ってくるので、注意しましょう。

3.MATCH関数の使い方

最後に、MATCH関数の使い方です。

上の社員基本情報一覧から、№3の「元木 一」さんの行番号を求めてみます。

 

以下、手順です。

 

(1)セルに「=MATCH(」と入力後、fxボタンを押す

 

(2)「検査値」に検索したい値を入力する

※ 例では「元木 一」が文字列なので「"」で囲みます

 

(3)「検査範囲」に検索する範囲を入力する

※ 例では「B4~B8」になります(タイトル行は除く)

 

(4)「照合の種類」に検索方法を入力する

※ 例では「0」になります(完全一致検索のため)

 

(5)OKボタンを押せば完了

結果数式は、

=MATCH("元木 一",B4:B8,0)

となります。

 

なお、検査値はセルG4に入っている値を使うこともでき、その場合数式は、

=MATCH(G4,B4:B8,0)

となります。

 

以上、参考になれば幸いです。

 


口コミ・評判のいいExcel本の紹介】


MATCH関数に関連したページは、次の通りです。

  • MATCH関数 使いこなすためのポイントはこちら
Top