INDEX関数とMATCH関数を組み合わせて、使いこなすことを目的とした全3回の第2回目の記事です。今回は『MATCH関数』の使い方を紹介します。
- 1回目:INDEX関数
- 2回目:MATCH関数 <今回>
- 3回目:INDEX関数とMATCH関数の組み合わせ
1回目の『INDEX関数』の使い方は以下の記事を参照ください。
MATCH関数とは
MATCH関数は、指定した行もしくは列の中で、指定した値が(文字列・数値)が何番目に存在しているかを返す関数です。
MATCH関数の構文
MATCH関数の構文は以下の通りです。
構文:MATCH(検索値,対象範囲,照合型)
<引数の説明>
- 検索値:検索する値
- 対象範囲:検索値を検索する範囲
- 照合型:-1、0、1(または省略)を指定できます。
1(または省略)を指定すると、『最大の値を検索』
0を指定すると、『検索値と等しい最初の値を検索』
-1を指定すると、『検索値以上の最小の値を検索』
検索値と一致するデータの場所を使うことがほとんどだと思うので、照合型は検索値と一致する値を検索対処とする「0」を覚えておけばいいと思います。
構文は数式バーに入力すれば以下のように表示されるので、暗記しなくても大丈夫です。
1.MATCH関数で値が列の何番目にあるかを求める 例
特定の1列の対象範囲内で検索値が何番目にあるかを求めます。
上の画像では、対象範囲B2:B5内の文字列「C100」が何番目にあるかを求めています。
式は=MATCH("C100",B2:B5,0)もしくは=MATCH(D2,B2:B5,0)で求めることができます。
※検索値に文字列「C100」を指定した場合と、セル参照で「C100」が入力されている「D2」を指定した場合を書きました。
2.MATCH関数で値が行の何番目にあるかを求める 例
特定の1行の対象範囲内で検索値が何番目にあるか求めます。
上の画像では、対象範囲B11:E11内の文字列「B100」が何番目にあるかを求めています。
式は=MATCH(G11,B11:E11,0)もしくは=MATCH("B100",B11:E11,0)で求めることができます。
※検索値に文字列「B100」を指定した場合と、セル参照で「B100」が入力されている「G11」を指定した場合を書きました。
3.MATCH関数の使用例
以下もMATCH関数で検索値が対象範囲の何番目にあるかを求めています。
特定の列の範囲で8月2日が何番目にあるか。そして、特定の行の範囲で東京本店が何番目にあるかを求めています。
「8月2日」がセル範囲「B22:B26」の何番目にあるかは
=MATCH(I21,B22:B26,0)または=MATCH(44045,B22:B26,0)で求められます。
※44045は2020/8/5のシリアル値です。
「東京本店」がセル範囲「C21:F21」の何番目にあるかは
=MATCH(I22,C21:F21,0)または=MATCH("東京本店",C21:F21,0)求められます。
MATCH関数は以上となります。
INDEX関数が対象範囲の行番号、列番号を指定してデータを求める関数になるので、行番号、列番号の引数にMATCH関数を使う方法を次回ご紹介します。