分かりやすいMATCH関数の使い方|引数指定のポイント
ここでは、MATCH関数の基本的な使い方を解説します。
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関数の構文(数式の形)は、次の通りです。
項目名 | 指定する内容 | 指定の例 |
検査値 |
検索したい値を指定 | 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本の紹介】