【エクセル関数】MATCHで指定範囲の位置番号を取得する

投稿者: | 2021年1月9日
excelアイコン

エクセルバージョン

マイクロソフト365

 

本日は指定した範囲の中で、検索する値の位置が数字でわかるMATCH関数について解説していきたいと思います。

使い方によっては非常に便利に機能しますのでこの機会に覚えちゃいましょう(^O^)

それではいってみましょう!

 

MATCH関数

概要

MATCH関数は検索値と一致する、検索範囲の要素の配列の位置を返します。

VBAで例えると配列のインデックスと似たようなものです。

行番号ではないので注意しましょう。

 

構文

=MATCH(検査値, 検査範囲, [照合の型])

[ ]は省略可です。

引数

MATCH引数詳細
第1引数検査値
(必須)

数値、文字列、論理値またはセルを指定。
・英字の大文字と小文字を区別しません。
アスタリスク検索可。(照合の型が0の時)
・検査値が見つからない場合は#N/Aエラー。

第2引数検索範囲
(必須)
データ範囲を指定。
第3引数照合の型
(省略可)

0の場合
・検査値と一致する最初の値を検索します。

1の場合(省略時/初期値)
・検査範囲を昇順(1,2,3やa,b.c)に並べ替える必要があります。

-1の場合
・検査範囲を降順(3,2,1やc,b,a)に並び替える必要があります。

match関数引数ダイアログ

 

照合の型 0 サンプル

照合の型が0の場合はデータの昇順、降順に関係なく完全一致した値の位置番号が取得できます。

照合0不規則

 

照合の型 1 サンプル

照合の型1 その1

データが昇順データの場合は正しい位置番号が取得できます。

照合1昇順1

 

照合の型1 その2

データが昇順ではない場合、正しい位置番号を取得できません。

照合1不規則

 

照合の型1 その3

・データが昇順ではない場合、正しい位置番号は取得できません。

・ですがデータの最大値より、検査値を大きな数値で検索して見つからない場合、データが存在する最大位置番号が取得されます。

この規則性を利用すると数字データの最終番号が取得できます。

照合1不規則最大値

参考例:数字データの最終行番号を取得

 

照合の型 -1 サンプル

照合の型-1 その1

データが降順データの場合は正しい位置番号が取得できます。

照合-1降順

 

照合の型-1 その2

データが降順ではない場合、正しい位置番号を取得できません。

照合-1不規則1

 

まとめ

第3引数の照合の型が若干ややこしいかと思われますが特別な使用をしない限りは、完全一致の0を指定します。

あとはその場に応じて昇順、降順が必要な検索の時だけ照合の型を1や-1に変更すれば、色々な検索ができるのでこの機会にご自身で面白い検索方法を見つけてみてください(*^^)v

以上です。