Excelでデータを検索する際、MATCH関数の「照合の種類」を正しく理解できていないために、思った通りの値が返ってこないことがあります。照合の種類は「完全一致」「近似一致(降順/昇順)」の3種類があり、それぞれの使いどころが異なります。この解説では照合の種類の意味だけでなく、それぞれの条件・前提・具体例を交えて、今日から使えるテクニックを詳細に説明します。最新情報に基づいて、初心者から上級者まで役立つ内容です。
目次
MATCH関数 照合の種類 の基本とは
MATCH関数は、指定した値が検査範囲の中で何番目にあるかを返す関数です。第三引数の照合の種類によって、検索のルールが変わります。正しい種類を選ばないと、範囲が昇順または降順に整っていないときに誤った結果になります。省略するとデフォルトで近似一致の昇順タイプ(1)が適用されます。最新情報では、完全一致を使うことが多くなっているため、省略せず0を明示することが推奨されます。
照合の種類とは何か
照合の種類は、MATCH関数の第三引数にあたる optional 引数で、「-1」「0」「1」のいずれかを指定します。これが検索のルールを決めます。番号が違うと挙動が大きく異なるため、必ず意味を理解して使うことが重要です。
それぞれの照合の種類の意味
種類ごとの意味は次の通りです。
1:lookup_value 以下の最大の値を返す(昇順に整列させる必要あり)。
0:完全一致のみを返す。範囲の順序は問わない。
-1:lookup_value 以上の最小の値を返す(降順に整列させる必要あり)。
デフォルト動作と省略時の注意点
照合の種類を省略した場合、Type 1 がデフォルトとなります。これにより、昇順に並んでいないデータで省略すると、意図しない結果やエラーを返すことがあります。近似一致を使う場合は、必ずデータを昇順か降順に並べておくことが条件になります。
MATCH関数の照合の種類ごとの使いどころと比較
照合の種類を使い分けるには、それぞれの特徴と向き不向き、そして条件を正確に把握する必要があります。ここでは 1/0/-1 の3種類を比較し、実務で使いやすい場面も含めて解説します。
照合の種類 = 0 (完全一致)の特徴と利点
完全一致は文字列・数値などが検査する値と完全に一致するものだけを探します。ワイルドカード(* や ?)を使って文字列の一部だけ一致させる方法もあります。
昇順・降順の順序を気にしなくてよく、データに順序がない場合や厳密に一致の結果が欲しいときに最も安全です。最新の実務では多くの場合、まず完全一致を確認し、必要に応じて近似一致を使う流れが一般的です。
照合の種類 = 1(昇順で近似一致)のメリットと制約
1 を指定すると、検査値以下の最大値を見つけてその位置を返します。値が見つからぬ場合でも最も近い小さい値を返すため、閾値処理や階級分類で使いやすいです。
ただし、検査範囲が昇順に並べられていないと誤った結果が返る可能性があります。省略時のデフォルトがこのタイプなので、意図しない近似一致になることがある点に注意が必要です。
照合の種類 = –1(降順で近似一致)の使いどころ
–1 を指定すると検査値以上の最小の値を返し、検査範囲は降順に整列させておく必要があります。
昇順とは逆の環境で使う専門的なケースやデータの並びが降順で定義されている場合に活用するとよいです。一般にはあまり使わないものですが、降順でソートされた数値や文字列を扱う場面で効果的です。
具体的な使用例と注意点
照合の種類の理解を深めるために、具体例を見て挙動の違いを比較します。また、データの順序やデータ型の影響、IFERROR を使ったエラー処理などの注意点も解説します。
例:点数 → 評価を返す例での使用
以下は点数から評価を返す例です。
| 点数 | 評価 |
|---|---|
| 0 | F |
| 60 | D |
| 70 | C |
| 80 | B |
| 90 | A |
この表で、ある人の得点を入力して、その評価を返すには照合の種類=1 を使います。たとえば80点であれば B、85点なら A の位置を返します。順序が昇順であることが前提になります。照合の種類=0 を使うと、得点が完全に一致するものがない限り #N/A エラーになることがあります。
文字列の検索とワイルドカードの活用
文字列を検索するとき、照合の種類=0 を用いれば文字列を正確に探せます。また“*”や“?”などのワイルドカードを使うことで部分一致を検索することもできます。ワイルドカードを活用することで、文字列の前後にある余分な文字を無視した検索が可能になります。ワイルドカードを使うときは照合の種類=0 であることが条件です。
データ型一致とセルの形式の注意点
数値を探すのに文字列形式だったり、日付のシリアル値が文字列扱いになっていたりすることがあります。このような場合、完全一致や近似一致の結果が思わぬものになることがあるので、検査する値と検査範囲の形式を揃えておくことが重要です。空白や余分なスペースがあると一致しない要因になります。
エラー処理とIFERROR の利用
MATCH 関数で値が見つからなかった場合、#N/A エラーが返ります。これをどう扱うかは実用性を高めるポイントです。IFERROR または IFNA を使って、#N/A の代わりに「該当なし」などの文言を返すと、表やダッシュボードが見やすくなります。
XMATCH関数との比較と最新の選択肢
Excel の最新バージョンには XMATCH 関数が導入されており、MATCH 関数の弱点を補う設計がされています。近代のシート操作環境ではこの選択肢を知っておくことが業務効率をアップさせます。
XMATCH の一致モードとは何か
XMATCH 関数には MATCH の照合の種類に相当する「一致モード」があり、その既定値が完全一致(0)になっています。MATCH と異なり、一致モードを省略すると完全一致で検索されるため、ミスを減らすことができます。
MATCH と XMATCH の違いのまとめ
以下に MATCH と XMATCH の主な違いを整理します。XMATCH の導入で得られるメリットと注意点を比較表で示します。
| 機能 | MATCH 関数 | XMATCH 関数 |
|---|---|---|
| デフォルトの検索モード | 近似一致(1) | 完全一致(0) |
| 照合/一致モードの種類 | 1, 0, ‒1 | 0, ±1, ワイルドカード対応など |
| 順序のソートの必要性 | 1 → 昇順、‐1 → 降順が必要 | 近似一致でもソート不要なケースあり |
| 主に使われる用途 | 階級分類、範囲検索 | 完全一致中心、柔軟な仕様 |
XMATCH を使うべきケース
最新バージョンの Excel を使っていて、完全一致を中心に検索することが多い人には XMATCH が便利です。複数の検索値を配列で処理したり、返す方向(上から下/下から上)を指定できる点も柔軟性があります。照合の種類を省略できるため、数式を短く書きたいときにも有利です。制約は古いバージョンでは使えないことと、近似一致の挙動が少しだけ異なる点ですが、慣れれば扱いやすいです。
実務でよくあるミスとその回避策
照合の種類を使う際に遭遇しがちな失敗例と、その防止方法を紹介します。これを知っておくと、作成する表現の信頼性が高まります。
範囲の順序が間違っている
近似一致(1または‐1)を使う場合に、昇順または降順に整列されていないと誤った値が返ります。昇順対応の 1 を使うなら昇順、‐1 を使うなら降順で並べておくこと。完全一致(0)の場合は並びの順序は無関係です。整理されていないデータで近似一致を使ってしまうことが最もよくある失敗です。
データ型の不一致
数値が文字列であったり日付がシリアル値かテキストかが混在していたりすると、一致しない・意図しない一致になることがあります。表の列全体が同一データ型であることを確認し、必要ならデータ型を統一したり TRIM などで不要な空白を削除することが大切です。
省略の盲点と意図せぬ近似一致
MATCH 関数の照合の種類を省略すると、近似一致の昇順タイプがデフォルトとなります。完全一致を期待していたのに省略してしまい、近似一致で返されてしまうことがあるので、完全一致が必要な場面では必ず 0 を指定します。
エラー時の見せ方が悪い
#N/A エラーがそのまま表示されるとシートが見づらくなります。IFERROR や IFNA を使って「該当なし」などの文言を返すようにすると、ユーザーにも親切です。特に分析やレポートで他者に共有する際にはこの処理を入れておくと安心です。
まとめ
MATCH関数を正しく使うためには、照合の種類=1/0/‐1 の違いをしっかり理解することが不可欠です。完全一致(0)は順序を気にせず正確に一致するものを探すため安心感があり、近似一致の種類(1/‐1)は閾値処理やランキング・階級付けなど複雑なデータ処理で力を発揮します。
また、最新環境では XMATCH 関数がより扱いやすく進化しており、完全一致が既定となっていることなどメリットが多いため、できる人はこの選択肢も視野に入れておくとよいでしょう。
実務でのトラブルの大半は、データの順序やデータ型のずれ、省略による意図せぬ照合種類の設定などから生じるものです。これらの注意点に気をつけて使えば、MATCH関数は非常に強力なツールになります。
コメント