MATCH 関数

MATCH 関数は、範囲 のセルの範囲で指定した項目を検索し、その範囲内の項目の相対的な位置を返します。たとえば、範囲 A1:A3 に値 5、25、38 が含まれている場合、数式「=MATCH(25,A1:A3,0)」を入力すると、範囲内では 25 が 2 番目の項目であるため、数字 2 が返されます。

お使いのブラウザーではビデオがサポートされていません。 Microsoft Silverlight、Adobe Flash Player、Internet Explorer 9 のいずれかをインストールしてください。

ヒント: 検索する項目自体ではなく、その項目の位置を調べる場合は、LOOKUP 関数の代わりに MATCH 関数を使用します。たとえば、MATCH 関数を使用すると、INDEX 関数の行番号引数の値を指定できます。

書式

MATCH(検査値, 検査範囲, [照合の型])

MATCH 関数の書式には、次の引数があります。

  • 検索値    必ず指定します。検査範囲の中で照合する値を指定します。たとえば、電話番号帳を使ってある人の電話番号を調べるとき、検査値としてその人の氏名を指定しますが、実際に検索するのは電話番号です。

    検査値には、値 (数値、文字列、または論理値)、またはこれらの値に対するセル参照を指定できます。

  • 検索範囲    必ず指定します。検索するセルの範囲を指定します。

  • 照合の型    省略可能です。-1、0、1 の数値のいずれかを指定します。照合の型には、検査範囲の中で検査値を探す方法を指定します。この引数の既定値は 1 です。

    次の表は、照合の型に基づいて関数が値を検索する方法を示しています。

照合の型

動作

1 または省略

MATCH 関数は、検査値以下の最大の値を検索します。検査範囲の引数の値は、昇順の並べ替えでは、1 ~ 9、A ~ Z、あ~ん、FALSE ~ TRUE の順に配置されます。

0

MATCH 関数は、検査値と等しい最初の値を検索します。検査範囲の引数の値は、任意の順序で指定できます。

-1

MATCH 関数は、検査値以上の最小の値を検索します。検査範囲の引数の値は、降順の並べ替えでは、9 ~ 1、Z ~ A、ん~あ、TRUE ~ FALSE の順に配置されます。

  • MATCH 関数は、指定したセルに含まれている値ではなく、検査範囲内にある検査値に一致する値の位置を返します。たとえば、MATCH("b",{"a","b","c"},0) は 2 を返します。これは、配列 {"a","b","c"} の中での "b" の相対位置を表します。

  • MATCH 関数では、英字の大文字と小文字は区別されません。

  • MATCH 関数で検査値が見つからない場合は、#N/A エラー値が返されます。

  • 検索の型 が 0 で、検索値が文字列の場合は、 検査値の引数で、疑問符(?) やアスタリスク (*)  をワイルドカード文字として使用できます。ワイルドカード文字の疑問符は任意の 1 文字を表し、アスタリスクは 1 文字以上の任意の文字列を表します。ワイルドカード文字ではなく、通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に半角のチルダ (~) を付けます。

使用例

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。数式を選択して、F2 キーを押し、さらに Enter キーを押すと、結果が表示されます。必要に応じて、列幅を調整してすべてのデータを表示してください。

製品

個数

バナナ

25

オレンジ

38

リンゴ

40

ナシ

41

数式

説明

結果

=MATCH(39,B2:B5,1)

B2:B5 のセル範囲から 39 を検索しますが、一致する値がないため、この値以下の最大の値 38 の位置が返されます。

2

=MATCH(41,B2:B5,0)

B2:B5 のセル範囲から 41 の位置を調べます。

4

=MATCH(40,B2:B5,-1)

B2:B5 のセル範囲は降順に並べ替えられていないため、エラーが返されます。

#N/A

関連項目

VLOOKUP 関数

INDEX 関数

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×