XMATCH関数の使い方|何番目にあるかを探す
※写真はイメージです
書き方はこれだけ
=XMATCH(探す値, 範囲)XMATCHは、探す値が範囲の上から何番目にあるかを返す関数です。MATCHの新しい版で、何も指定しなければ完全一致で探します(MATCHは0を付け忘れると近い値を探してしまう)。下から探す(いちばん最後に出てくる位置)こともできます。Microsoft 365・Excel 2021以降で使えます。
この図の表をExcelファイルでダウンロード(問題と答えのシートつき)
MATCHとのちがい
| MATCH | XMATCH | |
|---|---|---|
| 何も指定しないとき | 近い値で探す(並べ替えが必要) | 完全一致で探す |
| 下から探す | できない | 4つ目に -1 |
| ワイルドカード | 使える(完全一致のとき) | 3つ目に 2 |
| 使えるExcel | すべて | Microsoft 365・2021以降 |
よく使う例
| やりたいこと | 式 |
|---|---|
| 上から何番目 | =XMATCH("ペン",A2:A100) |
| 最後に出てくる位置 | =XMATCH("ペン",A2:A100,0,-1) |
| 「ペン」で始まるもの | =XMATCH("ペン*",A2:A100,2) |
| INDEXと組み合わせて値を取る | =INDEX(C2:C100,XMATCH(F2,A2:A100)) |
正直、値を取り出したいだけならXLOOKUP 1つで済みます。XMATCHを使うのは、位置そのものが知りたいときや、INDEXで行と列の両方を探すときです。
うまくいかないとき
1#N/A になる
探す値が見つかりません(全角・半角、空白のちがい)。
直し方探す値と表の値が同じか確かめます。IFERRORで空欄にもできます。
2#NAME? になる
XMATCHのないExcel(2019以前)です。
直し方=MATCH("ペン",A2:A100,0) を使います。
サンプルファイルで試す
黄色のセルに式を入れて、「答え」のシートと比べてください。
よくある質問
XMATCH関数とは?
探す値が範囲の上から何番目にあるかを返す関数です。MATCHの新しい版です。
XMATCHとMATCHのちがいは?
XMATCHは何も指定しないと完全一致で探し、下から探すこともできます。
最後に出てくる位置を探すには?
=XMATCH(探す値,範囲,0,-1) のように4つ目に-1を入れます。
一緒に覚えたい関数・操作
このページについて
操作の説明は Microsoft 365 の日本語版Excel(Windows)に合わせています。図はこのサイトで作ったもので、表の会社名・商品名・人名は架空です。運営者情報