Excel 関数 match

デザイン五輪書

ExcelのMATCH関数で合致(MATCH)する値の順番を検索(SEARCH)

読了までの目安時間:約 11分

 

にほんブログ村 イラストブログ Photoshopへコンピュータグラフィックス ブログランキングへFC2ブログランキングブログランキングならblogram i2iブログランキング

ExcelのMATCH関数で合致(MATCH)する値の順番を検索(SEARCH)

マッチする値の順番を探すMATCH関数

MATCH関数とは?

Excelファイルの膨大なデータベースの中から、目的の値が何番目に記載されているのかを探す際には、MATCH関数を使用します。

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

少し堅っ苦しい言い回しをしますと、MATCH関数は、指定された照合の種類に従って検索範囲内を検索し、検索値と一致する要素の、配列内での相対的な位置を表す数値を返します。

「検索値」には、配列、数値、文字列、論理値、またはこれらの値への参照の中で必要な項目を検索するために使用する値を指定します。
要するに、何番目に表示されているのかを知りたい値を「検索値」に指定します。

「検索範囲」には、検索値が入力されている連続したセル範囲、値の配列、または配列への参照を指定します。
「検索範囲」として指定した範囲の中で、「検索値」が何番目なのかをMATCH関数が計算します。

「照合の種類」には、「1」、「0」、または「-1」の数値のいずれかを指定し、検索値を検索する方法を指定します。
「検索の種類」に何も記述しない場合は、「1」と見なされます。
「照合の種類」に関しては、この後詳しく説明します。

▲もくじへ戻る

MATCH関数の照合の種類を使い分ける

MATCH関数の照合の種類を1に

MATCH関数の「照合の種類」を「1」に設定すると、「検索範囲」の中から、「検索値」以下の数値を検索する事ができます。
「検索値」以下の数値が複数存在した場合は、その中でも、最大値のものを値として返します。

MATCH関数の「照合の種類」を「1」に設定する場合は、「検索範囲」の値が昇順に並べられている必要があります。
「検索範囲」が昇順に並べられていない場合、結果としてエラーが返されてしまいます。

説明だけでは分かりにくいと思いますので、実際にMATCH関数の「照合の種類」を「1」に指定して、目的の「検索値」の順番を調べてみましょう。

テストの結果(作例)

今回は、「根井が30点を取れなかった教科」をMATCH関数で検索します。

まずは、検索結果を表示するセルを選択します。
「G3」セルを選択して下さい。

MATCH関数の計算結果を表示するセル

続いて、「リボン」の「数式」タブをクリックします。

数式タブ

そして、「関数ライブラリ」グループ内にある「検索/行列」をクリックします。

検索/行列

「検索/行列」のメニューが展開されますので、その中から「MATCH」を選択します。

MATCH

「関数の引数」ダイアログが表示されます。
この状態で、「検索値」となる「30」が記述されている「I2」セルをクリックします。

検索値となるセルをクリック

続けて、「関数の引数」ダイアログの「検索範囲」の項目をクリックします。

検索範囲

そして、「検索範囲」となる「C7」セルから「E7」セルまでの間をドラッグ選択します。

検索範囲を選択

続けて、「関数の引数」ダイアログの「照合の種類」の項目に「1」と記入します。

照合の種類に1と記入

「OK」をクリックすると、「G3」セルに「1」と言う値が返されます。

MATCH関数の値が返された

「選択範囲」の1番目の値。
つまり、国語と言う事になります。

MATCH関数の値の意味

▲もくじへ戻る

MATCH関数の照合の種類を0に

MATCH関数の「照合の種類」を「0」に設定すると、「検索範囲」の中から、「検索値」が一致する値を検索する事ができます。

MATCH関数の「照合の種類」を「1」に設定する場合は、「検索範囲」の値が昇順に並べられている必要がありましたが、「0」の場合は、「検索範囲」の値の順番は気にする必要がありません。

では、実際にMATCH関数の「照合の種類」を「0」に指定して、目的の「検索値」の順番を調べてみましょう。
次は、「国語が74点だった人物」をMATCH関数で検索します。

まずは、検索結果を表示するセルを選択します。
「G6」セルを選択して下さい。

MATCH関数の計算結果を表示するセル

続いて、「リボン」の「数式」タブをクリックします。

数式タブ

そして、「関数ライブラリ」グループ内にある「検索/行列」をクリックします。

検索/行列

「検索/行列」のメニューが展開されますので、その中から「MATCH」を選択します。

MATCH

「関数の引数」ダイアログが表示されます。
この状態で、「検索値」となる「74」が記述されている「I5」セルをクリックします。

検索値となるセルをクリック

続けて、「関数の引数」ダイアログの「検索範囲」の項目をクリックします。

検索範囲

そして、「検索範囲」となる「C4」セルから「C7」セルまでの間をドラッグ選択します。

検索範囲を選択

続けて、「関数の引数」ダイアログの「照合の種類」の項目に「0」と記入します。

照合の種類に0と記入

「OK」をクリックすると、「G6」セルに「3」と言う値が返されます。

MATCH関数の値が返された

「選択範囲」の3番目の値。
つまり、西居と言う事になります。

MATCH関数の値の意味

▲もくじへ戻る

MATCH関数の照合の種類を-1に

MATCH関数の「照合の種類」を「-1」に設定すると、「検索範囲」の中から、「検索値」以上の数値を検索する事ができます。
「検索値」以上の数値が複数存在した場合は、その中でも、最小値のものを値として返します。

MATCH関数の「照合の種類」を「-1」に設定する場合は、「検索範囲」の値が降順に並べられている必要があります。
「検索範囲」が降順に並べられていない場合、結果としてエラーが返されてしまいます。

では、実際にMATCH関数の「照合の種類」を「-1」に指定して、目的の「検索値」の順番を調べてみましょう。
今度は、「数学で80点以上取った人物」をMATCH関数で検索します。

まずは、検索結果を表示するセルを選択します。
「G9」セルを選択して下さい。

MATCH関数の計算結果を表示するセル

続いて、「リボン」の「数式」タブをクリックします。

数式タブ

そして、「関数ライブラリ」グループ内にある「検索/行列」をクリックします。

検索/行列

「検索/行列」のメニューが展開されますので、その中から「MATCH」を選択します。

MATCH

「関数の引数」ダイアログが表示されます。
この状態で、「検索値」となる「80」が記述されている「I8」セルをクリックします。

検索値となるセルをクリック

続けて、「関数の引数」ダイアログの「検索範囲」の項目をクリックします。

検索範囲

そして、「検索範囲」となる「D4」セルから「D7」セルまでの間をドラッグ選択します。

検索範囲を選択

続けて、「関数の引数」ダイアログの「照合の種類」の項目に「-1」と記入します。

照合の種類に-1と記入

「OK」をクリックすると、「G9」セルに「1」と言う値が返されます。

MATCH関数の値が返された

「選択範囲」の1番目の値。
つまり、柏原と言う事になります。

MATCH関数の値の意味

▲もくじへ戻る

他の関数との連携

順番だけ分かっても・・・

これまで、MATCH関数についての説明をして来ました。
ご覧になった方の中には、「順番だけ分かっても仕方がないのでは?」と疑問に思った方もいるでしょう?
・・・確かに、順番だけ分かっても、仕方がないです。

ですが、「値ではなく順番が返される」と言う特徴は、時として、大いに役立つのです。
それは、MATCH関数と他の関数とを連携する場合です。

その一例として、今回は、MATCH関数とINDEX関数との連携をご紹介したいと思います。

▲もくじへ戻る

INDEX関数とMATCH関数を連携する

INDEX関数を使用すると、指定された行と列が交差する位置にある値またはセルの参照を返す事ができます。
つまり、表の「行番号」と「列番号」を指定する事で、その交点となるセルの値を表示する事ができると言う事です。

INDEX(配列,行番号,列番号)

これまでご紹介して来た方法を応用して、「行番号」や「列番号」をMATCH関数で導き出すとしたらどうでしょう?

試しに、「西居の数学の点数」を導き出すとします。

西居の「行番号」をMATCH関数で求める場合、以下のようになります。

MATCH(G11,B3:B7,0)

西居の行番号

そして、数学の「列番号」をMATCH関数で求める場合、以下のようになります。

MATCH(I11,B3:E3,0)

数学の列番号

これをそのままINDEX関数に当てはめると、以下のようになります。

INDEX(B3:E7,MATCH(G11,B3:B7,0),MATCH(I11,B3:E3,0))

MATCH関数とINDEX関数を連携

結果、「75」と言う数値が返されます。

MATCH関数とINDEX関数の連携結果

ちなみに、「I11」セルの「数学」を「科学」に書き換えると、返される値が「75」から「50」に切り替わります。

数学を科学に書き換える

「G11」と「I11」セルを、「データの入力規則」の「リスト」に変換するのも良いかもしれません。

データの入力規則のリスト

▲もくじへ戻る

まとめ

MATCH関数の組み合わせを探してみよう!

今回は、ExcelのMATCH関数を使って、「検索値」とマッチする値の順番を表示する方法をご紹介しました。

MATCH関数を単体で使用するよりも、他の関数と組み合わせる事で、もっと便利な効果を発揮する事ができます。
今回はINDEX関数との連携をご紹介しましたが、他の組み合わせを考えてみると、もっと面白い効果を発揮するかもしれません。
ぜひ、色々試してみて下さい。

今回の記事で、あなたの業務が効率化される事を願っています。

にほんブログ村 イラストブログ Photoshopへコンピュータグラフィックス ブログランキングへFC2ブログランキングブログランキングならblogram i2iブログランキング

タグ :

ソフトウェア Microsoft Office   コメント:0

この記事に関連する記事一覧

TOPへ戻る