ラベルラベル

検索・参照入門

MATCH関数を見て理解する

検索範囲の中で、検索値が何番目にあるかを返す関数です。

3つのポイント

  1. 検索値を決める
  2. 検索範囲から位置を探す
  3. 見つかった場所を1から始まる番号で返す
例題

商品コードが何番目にあるか完全一致で探す

サンプル数式

  • 検索値
  • 検索範囲
  • 照合の種類

いまの結果:

3
計算結果
結果セル:F2
入力・条件:3項目
  • 検索値E2:「A003」
  • 検索範囲A2:A6(5セル)値の例:「A001」、「A002」、「A003」
  • 照合の種類指定値:0
この結果になる理由

A4で一致が確認されました。

サンプルデータ

検索値を変えてみよう

※ Excel と Google スプレッドシートで結果や挙動が異なる場合、Excel の仕様を基準にしています。

「商品コードが何番目にあるか完全一致で探す」のサンプルデータ。引数番号は正式引数と教材要素の対応、小さな角丸数字は処理順を表します。
ABCDEF
1商品コード商品名  検索値位置
2A001ペン  3
3A002ノート    
4A003ファイル    
5A004ハサミ    
6A005付箋    
検索値検索範囲結果セル
①・② 正式引数 / 教材要素1–5 処理の流れ

E2に値を入力すると、結果と処理順が変わります。

3つの引数

色付きの丸数字は、サンプル数式と引数ガイドで同じ引数を示しています。表にも同じ番号があれば、その引数で指定しているセルを示します。

  1. E2表のセル: E2

    位置を調べたい商品コードです。この例ではE2の「A003」を使います。

  2. A2:A6表のセル: A2:A6

    検索値を探す1行または1列の範囲です。

  3. 0指定値

    0を指定すると完全一致で探します。

この数式を日本語にすると

E2のA003をA2:A6から完全一致で探し、範囲の上から3番目なのでF2に3を表示します。

この説明は、最初に表示されているサンプルデータをもとにしています。入力値を変更しても説明文は変わりません。

処理の流れ

手順1〜5を順番に確認しましょう。表内の小さな角丸数字は、対応する手順を示します。

  1. 検索値を確認する

    E2

    E2の「A003」を確認します。

  2. 検索範囲を確認する

    A2:A6

    A2:A6を検索対象にします。

  3. 照合方法を確認する

    完全一致(0)を使います。

  4. 一致する位置を探す

    A4

    A4が一致し、検索範囲の3番目です。

  5. 結果を表示する

    F2

    F2に3を表示します。

対応アプリ

  • Excel
  • Google スプレッドシート

関数自体が対応するアプリです。教材例の数式や再計算が、両アプリで同じように動くことを保証するものではありません。

この例の注意点

  • 第3引数に0を指定すると、検索値と完全に一致する値の位置を返します。
  • 第3引数に-1を指定する場合は、降順の検索範囲から検索値以上の最小値の位置を返します。
  • 完全一致で文字列を探す場合は大文字・小文字を区別せず、* と ? のワイルドカードも使えます。

一般構文

対応:Excel / Google スプレッドシート ・ 構文:引数名に差あり

  • 第3引数の照合方法にExcelの通常仕様外の値(例:-2)を指定した場合、ExcelとGoogle スプレッドシートで扱いが異なります。Excelでは#N/Aになる一方、Google スプレッドシートでは検索結果の位置が返るケースがあります。

Excel

=MATCH(lookup_value, lookup_array, [match_type])

[] は省略できる引数です。

省略時

match_type
→ 1省略すると近似一致です。昇順の検索範囲から、検索値以下の最大値の位置を返します。

Google スプレッドシート

=MATCH(search_key, range, [search_type])

[] は省略できる引数です。

省略時

search_type
→ 1省略すると、昇順の範囲から検索値以下の最大値を探します。
公式資料・確認範囲

公式資料

実機確認

  • Excel 2021 / Google スプレッドシート計算結果・入力の扱い・エラーを確認済み

未確認

配列展開

次に学ぶ関数

XMATCH

位置を返す次は、照合方法と検索方向を指定する方法を学びます。

次に学ぶ