XMATCH関数は特定の値が指定範囲の何番目にあるか表示する関数である。データ数が多い場合などに値を素早く探せる。MATCH関数よりも機能が進化しており、柔軟な検索が可能になっている。
目次
ExcelのXMATCH関数の使い方が分からないという方もいるのではないだろうか。XMATCH関数は特定の文字列や数値がどの位置にあるのか検索できる関数だ。
本記事ではExcelのXMATCH関数の使い方について解説する。ワイルドカードでの検索方法についてもまとめた。
XMATCH関数とは?

XMATCH関数は指定した範囲内で検索を行う関数である。指定範囲の何番目に特定文字列や数値があるかを調べることができる。
たとえばA2〜A5から「りんご」と書かれたセルが上から何番目にあるかを調べられる。
XMATCH関数はMicrosoft 365で利用可能だ。
■XMATCH関数の構文
XMATCH関数の基本的な構文は次のとおり。
- =XMATCH({参照値},{検索範囲},{一致モード},{検索モード})
{一致モード}{検索モード}はオプションであり、省略可能だ。
基本的には{参照値}と{検索範囲}を指定する。XMATCH関数は{検索範囲}の中から{参照値}がどこにあるかを返すことができる。
XMATCH関数の基本的な使い方

XMATCH関数の基本的な使い方について解説する。
XMATCH関数で次の4つを行う方法を順番に見ていこう。
- 特定の文字列が何番目か返す
- 特定の数値以上が何番目か返す
- 特定の数値以下が何番目か返す
- 特定の文字列を含んだものが何番目か返す
■1.特定の文字列が何番目か返す
まずはもっとも基本的なXMATCH関数の使い方を紹介する。特定の文字列が配列の何番目にあるのかを調べる。
以下では「=XMATCH(“田中”,A2:A6)」としている。
A2〜A6の中から「田中」という文字列を探す。

「田中」は2番目にある。よってXMATCH関数は「2」を返した。
4番目にも「田中」があるが、XMATCH関数は先頭から末尾の順番で検索し、最初に見つけたものを返す。そのため、結果は「2」となる。

■2.特定の数値以上が何番目か返す
続いて、特定の数値以上が何番目にあるかを取得する。
以下では「=XMATCH(90,B2:B6,1)」としている。
「90」以上の数値がB2〜B6の何番目にあるかを調べる。

実行すると「4」と表示された。
90以上の数は「93」と「98」。該当する値が複数ある場合は「もっとも近い値」を返す。そのため今回は「93」の順番である「4」が返された。

■3.特定の数値以下が何番目か返す
今度は、特定の数値以下が何番目にあるかを取得する。
以下では「=XMATCH(70,B2:B6,-1)」としている。
「70」以下の数値がB2〜B6の何番目にあるかを調べる。3つ目の引数に「-1」を指定することで、「以上」ではなく「以下」の数値を検索できる。

実行すると「3」と表示された。
70以下の数値は「65」「69」「70」。「70」にもっとも近い値は当然「70」である。よって「70」の順番である「3」が返された。

■4.特定の文字列を含んだものが何番目か返す
続いて「特定の文字列が含まれた値」が何番目にあるかを取得する。
以下では「=XMATCH(“*有限会社*”,A2:A6,2)」としている。
「有限会社」という文字列を含んだ文字列がA2〜A6の何番目にあるかを調べる。

実行すると「2」と表示された。
「有限会社」が含まれているのは「BBB有限会社」「有限会社EEE」のみ。「BBB有限会社」の順番である「2」が返された。

XMATCH関数の検索モードの使い方

続いて、XMATCH関数のオプションである検索モードの使い方を解説する。検索モードを使うことで、通常とは異なる手順で検索を行える。
検索モードを使って次の2つを行う方法を順番に見ていこう。
- 末尾から先頭へ検索する
- バイナリ検索を実行する
■1.末尾から先頭へ検索する
4つ目の引数に「-1」を指定することで、XMATCH関数が末尾から先頭へ検索する。
以下では「=XMATCH(“田中”,A2:A6,0,-1)」としている。

実行すると「4」と表示された。
後ろから順番に検索するので、4番目の「田中」が最初にヒットする。よって「4」になる。

■2.バイナリ検索を実行する
4つ目の引数に「2」を指定することで、XMATCH関数がバイナリ検索を実行する。バイナリ検索は、通常よりも速く特定の値を探せる検索方法である。
以下では「=XMATCH(90,B2:B6,1,2)」としている。

実行すると「4」と表示された。出力結果は変わらないが、データ量が増えるとバイナリ検索の方が素早く実行できる。
ただし、昇順に並んでいない場合は正しく検索できない。バイナリ検索はソートされたデータ群に対してのみ使える検索手段である。








DIME MAGAZINE











