目次
×
数式と関数

ヒント: 任意の方向に動作し、既定で完全一致を返す MATCH の改善されたバージョンである新しい XMATCH 関数を使用してみてください。これは、先行タスクよりも使いやすく、使いやすくなっています。

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

お使いのブラウザーではビデオがサポートされていません。

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

書式

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

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

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

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

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

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

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

照合の型

動作

1 または省略

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

0

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

-1

MATCHは、 の値以上の最小の値 lookup_value。 lookup_array引数 値は、TRUE、FALSE、Z-A、... など、降順に配置する必要があります。2、1、0、-1、-2、...など。

  • MATCH は、値自体ではなく、lookup_array 内の一致する値の位置を返します。 たとえば 、MATCH("b",{"a","b","c"},0) は、配列 {"a","b","c"} 内の "b" の相対位置である 2 を返します。

  • 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 関数

ヘルプを表示

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

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

翻訳品質にどの程度満足していますか?

どのような要因がお客様の操作性に影響しましたか?

その他にご意見はありますか?(省略可能)

フィードバックをお送りいただきありがとうございます!

×