検索・参照入門
MATCH関数を見て理解する
検索範囲の中で、検索値が何番目にあるかを返す関数です。
3つのポイント
- 検索値を決める
- 検索範囲から位置を探す
- 見つかった場所を1から始まる番号で返す
商品コードが何番目にあるか完全一致で探す
サンプル数式
- 検索値
- 検索範囲
- 照合の種類
いまの結果:
3
計算結果結果セル:F2
先頭行:
入力・条件:3項目
- 検索値E2:「A003」
- 検索範囲A2:A6(5セル)値の例:「A001」、「A002」、「A003」
- 照合の種類指定値:0
この結果になる理由
A4で一致が確認されました。
サンプルデータ
検索値を変えてみよう
※ Excel と Google スプレッドシートで結果や挙動が異なる場合、Excel の仕様を基準にしています。
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | 商品コード | 商品名 | 検索値 | 位置 | ||
| 2 | A001 | ペン | 3 | |||
| 3 | A002 | ノート | ||||
| 4 | A003 | ファイル | ||||
| 5 | A004 | ハサミ | ||||
| 6 | A005 | 付箋 |
①検索値②検索範囲✓結果セル
①・② 正式引数 / 教材要素1–5 処理の流れ
E2に値を入力すると、結果と処理順が変わります。
3つの引数
色付きの丸数字は、サンプル数式と引数ガイドで同じ引数を示しています。表にも同じ番号があれば、その引数で指定しているセルを示します。
E2表のセル: E2位置を調べたい商品コードです。この例ではE2の「A003」を使います。
A2:A6表のセル: A2:A6検索値を探す1行または1列の範囲です。
0指定値0を指定すると完全一致で探します。
この数式を日本語にすると
E2のA003をA2:A6から完全一致で探し、範囲の上から3番目なのでF2に3を表示します。
この説明は、最初に表示されているサンプルデータをもとにしています。入力値を変更しても説明文は変わりません。
処理の流れ
手順1〜5を順番に確認しましょう。表内の小さな角丸数字は、対応する手順を示します。
検索値を確認する
E2E2の「A003」を確認します。
検索範囲を確認する
A2:A6A2:A6を検索対象にします。
照合方法を確認する
完全一致(0)を使います。
一致する位置を探す
A4A4が一致し、検索範囲の3番目です。
結果を表示する
F2F2に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省略すると、昇順の範囲から検索値以下の最大値を探します。
公式資料・確認範囲
公式資料
- Microsoft Excel 公式構文
- Google スプレッドシート 公式対応状況・構文・省略時の扱い
実機確認
- Excel 2021 / Google スプレッドシート計算結果・入力の扱い・エラーを確認済み
未確認
配列展開
次に学ぶ関数
XMATCH
位置を返す次は、照合方法と検索方向を指定する方法を学びます。
次に学ぶ