【Excel】MATCH関数とは? その概要と活用法を解説

更新:2023/05/29

ITスキル

MATCH関数は、値を示している箇所を探し出す場合などに利用できるものです。

使い方を覚えることで、さまざまな場面で活用することができます。
今回は、MATCH関数の概要と活用法について解説します。



ExcelのMATCH関数は、探している値が「何行目」にあるのか、あるいは「何列目」にあるのかを求めるための関数。それ単独で使うよりも、ほかの関数と組み合わせて使うことで、より力を発揮するようになります。

今回はこのMATCH関数の基本と、HLOOKUP関数にからめた活用法をご紹介。何かと便利なワイルドカードについても触れています。MATCH関数の使い方がイマイチ分からないという方は、是非参考にしてください。

※今回、Office2021のExcel for macの画像を用いて解説しますが、基本的な流れはWindows版も同様です。

Excel関数の基本まとめ

MATCH関数とは?どんなときに使うか

MATCH関数は、知りたい値が範囲内のどの位置にあるかを見つけるために使用される関数です。具体的には、知りたい値と一致するセルが範囲内にある場合、そのセルの位置(◯行目または◯列目)を答えてくれるものです。

「位置を知ったところで何に使うの?」

実はMATCH関数は単独で使われるよりも、VLOOKUPやHLOOKUP関数と組み合わせて使われることが多いです。

例えば「11月のじゃがいもの納品数」を知りたいときに、

1.「11月納品数」の列がどこなのか検索
(←HLOOKUP関数にて)

2.そこから縦に◯行目にある「じゃがいも」のデータを取得!
(←MATCH関数との組み合わせで)

このように、まず横方向(あるいは縦方向)に検索して、その位置から別方向のセルに移動してデータを取得するのに便利なのです。組み合わせ例は後ほど【応用編】のところでご紹介します。

MATCH関数の数式

=MATCH(検査値,検査範囲,照合の種類)

「検査値」=検索をしたい値
「検査範囲」=検索をする範囲
「照合の種類」=検索方法を1、0、-1の中から選択。選択をしない場合は、自動的に1が選択されます。

◆照合の種類

1または省略 検索値以下の最大値が求められます。データは、昇順に並べておきます。
0 検索値に一致する値が求められます。データは特に並べ変えなくてもかまいません。
-1 検索値以上の最小値が求められます。データは、降順に並べておきます。

この記事では、照合の種類は完全一致ということで「0」を使っていきます。

MATCH関数の使い方【基本編】

ここからは、MATCH関数の使い方をサンプルで解説していきます。まずは基本編から。

下表において「じゃがいもは何行目?」に答える数式を作ってみます。

MATCH関数 使い方 基本編1

(1)答えを表示したいセルを選択し、シート上部「fx」をクリックして関数の挿入

MATCH関数 使い方 基本編2

(2)MATCHを検索して、見つかったら選択して「関数の挿入」

MATCH関数 使い方 基本編3

(3)検査値は、今回わかりやすく「じゃがいも」と手入力、検査範囲は表のA列「A3:A7」をドラッグすれば自動で入ります。照合の種類は、完全一致にしたいので「0」で「完了」

MATCH関数 使い方 基本編4

(4)「4」行目と答えが表示されました。

MATCH関数 使い方 基本編5

※ここではタイトル行も含めて「表全体の中の4行目」と計算しています。

MATCH関数の使い方【応用編】

「基本編だと、あまり使い道がないのでは…?」

では次に、より実務的な応用編としてHLOOKUP関数とからめた使い方をご紹介します。

◆HLOOKUP関数とは?

範囲指定した表の「先頭行」で知りたい値を検索し、その列の上から○行目にある値を答えます。

【構文】
HLOOKUP(検索値,範囲,行番号,検索方法)

先ほどからの表で「11月のじゃがいもの販売個数は?」に答える数式を作ってみます。

MATCH関数 使い方 応用編1

この場合、「11月」の列を探して、さらに「じゃがいも」の行を探さなければなりません。表が小さいうちはひと目で「35」と答えが分かりますが、表が大きくなってくると探すのが大変!そこで、2つの関数を組み合わせた数式があると役立つのです。

(1)黄色セルは手入力欄です。「11月」「じゃがいも」とそれぞれ入力しておき、数式を入れるオレンジセルを選択してから「fx」で関数の挿入

MATCH関数 使い方 応用編2

(2)先にHLOOKUPを検索し「関数の挿入」

MATCH関数 使い方 応用編3

(3)HLOOKUP関数では「先頭行」を検索するため、手入力しておいた「B10」(期間を示す)を検索値へ。範囲は表全体をドラッグすると「A3:F7」が自動入力されます。

行番号は、ここでは仮に「4」(4行目)と手入力しておきます。検索方法は、完全一致をあらわす「FALSE」と入力して「完了」

MATCH関数 使い方 応用編4

するとまず11月を検索し、そこから下に4行目にある「35」と計算してくれるようになります。

そして、ここからがMATCH関数の出番。仮で手入力した「4行目」のところも計算で出せるように直していきます。

(4)基本編で作ったMATCH関数のセルをクリック。基本では「じゃがいも」と手入力した検査値の部分を「B11」(品目を示す)に直して「完了」

MATCH関数 使い方 応用編5

これで「B11(じゃがいも)は何行目?」に答える数式が出来上がります。

(5)MATCH関数の数式を「=」以外全てコピー

MATCH関数 使い方 応用編6

(6)先ほどのHLOOKUP関数の数式で仮入力した「4」の代わりに貼り付け

MATCH関数 使い方 応用編7

この数式ではまず先頭行の11月を検索し、次にじゃがいもの行を探してそこまで移動して下さいね、と指示していることになります。

(7)組み合わせ完了!黄色セルで期間や品目を書き換えると、データも常に更新されるようになります。

MATCH関数 使い方 応用編8

慣れないうちは数式を手入力するとエラーになりやすくなります。上記のように数式を1つずつ作成し、確認しながらコピーペーストする方法がおすすめです。

MATCH関数で使えるワイルドカード

ここからは、MATCH関数やその他の関数でも便利に使えるワイルドカードについてご紹介します。

ワイルドカードとは?

ワイルドカードとは、検索したい文字の一部が不明な場合に用いる「*(アスタリスク)」や「?(クエスチョン)」といった記号を指します。

例えば「田中*」のように、フルネームが完全に分からなくてもワイルドカードを用いることであいまい検索を実行することができます。

なお、「?(クエスチョン)」は、1文字の文字列を指し、「*(アスタリスク)」では、1文字に限らず、複数の文字列を検索することができます。

アスタリスクを使ってみよう

ワイルドカードの「*(アスタリスク)」を実際に使ってみましょう。「*(アスタリスク)」は不明な文字を何文字でも含ませることができるため便利です。

例えば、先ほどからの野菜の表で「ピーマン」ではなく「ピー*」と入力してみます。

MATCH関数 ワイルドカード

ピーマンと正しく入力できなくても、アスタリスクを使うことで部分一致で正しい数値が算出できることが分かります。

まとめ

MATCH関数は、知りたい値が範囲内の何行目にあるか、あるいは何列目にあるかを見つけるための関数です。VLOOKUPやHLOOKUP関数と組み合わせることで、たとえ表が大きくなっても知りたい値を瞬時に探すことができるようになります。

仕事など、さまざまな場面にMATCH関数を活用し、Excelを使いやすいものにしていきましょう。

(マイナビ学生の窓口編集部)

関連記事

新着記事

もっと見る

HOT TOPIC話題のコンテンツ

注目キーワード

 ビジネス用語・カタカナ語80選

 キャリアロードマップの一歩目

  • ピックアップ