重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

エクセル2013の練習でMATCH関数とINDEX関数を利用した
データを作っていました。
添付した画像のD79でMATCH関数を使って番号を表示しています。
D79に入力した式は=MATCH(C79,B73:B76)です。
指定の行はB73~B76までの4行で、春、夏、秋、冬の順番で並んでいますが
C79に春と入力すると、順番としては1番目の春が何故か3と表示されます。
他の夏、秋、冬は順番通り2,3,4と結果が表示されます。
シートの設定を変にしてしまったのかもしれないと新規で開いて試しましたが結果は同じでした。
MATCH関数の検索を行ではなく列側に変えて試しもしましたが、結果は同じでした。
春以外の言葉や数字だとこのようなことは起こりません。
また、リストにしても直接打ち込みにしても同じ結果でした。
この現象を春を使用しない以外に回避する方法がありますでしょうか?
宜しくお願い致します。

「エクセル MATCH関数について」の質問画像

A 回答 (2件)

MATCH関数の第3引数(照合の型)が省略されているためです。



以下のように0を指定してください。

=MATCH(C79,B73:B76,0)

そのままの数式で対応するなら参照するデータを昇順に並べ替えてください。

以下MATCH関数のヘルプより引用

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

照合の型 動作

1 または省略
MATCH 関数は、検査値以下の最大の値を検索します。検査範囲の引数の値は、昇順の並べ替えでは、1 ~ 9、A ~ Z、あ~ん、FALSE ~ TRUE の順に配置されます。
0
MATCH 関数は、検査値と等しい最初の値を検索します。検査範囲の引数の値は、任意の順序で指定できます。
-1
MATCH 関数は、検査値以上の最小の値を検索します。検査範囲の引数の値は、降順の並べ替えでは、9 ~ 1、Z ~ A、ん~あ、TRUE ~ FALSE の順に配置されます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
照合の型を入れた所、無事に正しく表示されました。
入力中にも関数の式が表示されているのに見落としておりました。

No2の方からも同様のアドバイスをいただいておりましたが、最初に回答して
いただいたということで、No1の方をベストアンサーとさせていただきます。

ありがとうございました。

お礼日時:2014/06/06 13:17

こんにちは!



MATCH関数の「照合の型」の指定を省略していますので、
「TRUE」型として処理されます。
「TRUE」型で処理する場合は検査範囲を昇順で並べておく必要があります。
ただし、「昇順」といってもあくまで数値に関してですので文字列ではとんでもない結果になると思います。

必要なことは日ごろから「照合の型」を省かずに
今回の場合は
=MATCH(C79,B73:B76,0)
としてみてください。
「照合の型」の0(FALSE)は「完全一致」のデータは範囲指定した行の何行目か?
が返ります。

無意味で余計なお世話かもしれませんが、
B73~B76のデータを
夏・秋・春・冬 の順にすれば「照合の型」を省略してもその順番通りの行が返ります。
試しに
A73セルに
=COUNTIF(B$73:B$76,"<"&B73)+1
という数式を入れ、フィルハンドルでA76セルまでコピーしてみてください
強いて言えばこれが春・夏・秋・冬 の大きい順になるので、
検査範囲がこの順番になっていれば「照合の型」を省略してもお示しの数式で表示できると思います。
(検査範囲が文字列なのでこの使い型が正しいかどうかは疑問ですが・・・)

結論として、日ごろから「照合の型」は指定する習慣をつけた方が良いと思います。m(_ _)m
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
照合の型をなんで入れていなかったのか、恥ずかしい限りです。
COUNTIF関数を試してみましたが、春の横に打ち込んでみたところ3と表示されました。
フィルハンドルで下までコピーすると3,1,2,4の順に。
この理由は何とか自力で確認してみたいと思います。

>結論として、日ごろから「照合の型」は指定する習慣をつけた方が良いと思います。m(_ _)m

基本的な事を忘れないよう、気を付けます。

ありがとうございました。

お礼日時:2014/06/06 13:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!