大量のデータから、特定の値が「どこにあるのか」探すのは大変ですよね。
そんなときに便利なのが「MATCH関数」!
検索したい値の「位置(何番目か)」を素早く教えてくれる関数です。
この記事では、Excel初心者の方でも安心して使えるよう、MATCH関数の基本と活用方法を図解つきでやさしく解説します。
📌この記事でわかること
- ・MATCH関数の基本構文と使い方
- ・よく使う活用パターン(VLOOKUPと組み合わせ)
- ・INDEX関数とMATCH関数の組み合わせ例
- ・よくあるエラーと対処法
🔶 MATCH関数とは?
MATCH関数は、指定した値が範囲内の「何番目」にあるかを返す関数です。
店舗での活用例:
発注リストで「商品C」が現在何番目にあるかを即確認したり、売上表で「今週のベストセラー」がどの列にあるかすぐ分かるようになります。
基本構文
🔹検索の型:0 → 完全一致で検索(基本はこれを使います)

🔶 MATCH関数の活用例
① データの位置を取得する
例:「商品C」がリストの何番目にあるか
=MATCH(“商品C”, A2:A6, 0)

② VLOOKUPの列番号を自動取得
例:列が増減する表でも正しい列番号を取得できる!
=MATCH(“価格”, A1:C1, 0)
=A1、B1、C1のセルから”価格”と入力されいるセルを探す
=表の項目が増えたり減ったりしても”価格”がどの列にあるか探してくれる!

店舗での使い方:
商品マスタに「仕入価格」「販売価格」「在庫数」など列が増減しても、MATCH関数を使えば自動的に価格の入力セルを特定できるので、計算ミスや修正漏れを防げます。
③ INDEX関数とMATCH関数の組み合わせ
例:「商品番号」を指定して「価格」を取得:
=INDEX(C2:C7, MATCH(D3, A2:A7, 0),1)
MATCH(D3, A2:A7, 0)でD3セルの検索値が何行目にあるかを調べる。
INDEX関数でC2:C7の範囲のMATCH(D3, A2:A7, 0)行目の1列目の値を出力する。

店舗業務応用:
商品コードから「現在の在庫数」や「入荷日」を自動取得できれば、棚卸作業や発注の判断がより正確かつスピーディになります。
🔶 うまくいかないときの対処法
トラブル内容 | 対処法 |
---|---|
#N/Aエラーが出る | 検索値と検索範囲のデータが一致しているか確認 |
間違った位置が返る | 検索の型を「0」にして完全一致で検索する |
🔶 まとめ:MATCH関数の効果と使い方
使用例 | 数式 | 効果 |
---|---|---|
位置検索 | =MATCH(“商品C”, A2:A6, 0) | データの場所がすぐわかる! |
VLOOKUP連携 | =MATCH(“価格”, A1:D1, 0) | 柔軟な検索列指定が可能に! |
INDEX連携 | =INDEX(B2:B6, MATCH(“商品C”, A2:A6, 0)) | 高度な検索処理が実現! |
商品在庫の 引当確認 | =INDEX(在庫範囲, MATCH(商品コード, コード範囲, 0)) | 入力ミスを削減し、在庫確認が高速化 |
店舗の在庫確認や売上支援にも即活用できる便利関数です!
🔄 前回の復習:「TEXT関数」でデータを見やすく整える!
👉 [【超初心者向け】ExcelのTEXT関数とは?日付や数値を見やすく整える方法を図解で解説!]
🔜 次回予告:「フラッシュフィル」でデータ入力を自動化!
繰り返し作業から卒業できる!便利な自動化の第一歩をお届けします。
🧡 SNSでも毎日Excelの小技を紹介中!
Instagramはこちら👉[@your_account_name]