[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『一覧の中から最終データを取り出す』(あるふ)
お知恵を拝借させてください。
列が日付で、行が何段かあるデータで、列の中の一番新しいデータを読み出すにはどうすればよいでしょうか
1 2 3 4 5 6 7 8 9 10 data1 10 20 50 40 20 90 data2 30 80 data3 15 20 50 60 data4 50 10 20 data5 40 50 40
上のようなデータで、最新のデータ(data1なら8日、data4なら10日)を引き出すのはどうすればよいでしょうか。
値が最小とか、最大ならminやmaxを使えばいいのですが、値が一定ではありません。
よろしくお願い致します。
A B C D E F G H I J K L M 1 1 2 3 4 5 6 7 8 9 10 2 data1 10 20 50 40 20 90 8 3 data2 30 80 6 4 data3 15 20 50 60 8 5 data4 50 10 20 10 6 data5 40 50 40 9
上記のようにデータがあり、M列に結果を出す場合。 M2 =INDEX($B$1:$K$1,MATCH(10^17,B2:K2)) として、下にコピーで、お望みの結果が得られると思います。 実際のデータ範囲に適宜変更して下さい。 (kkk)
kkk様ありがとうございます。
すみません、日付を返すのではなく、値を返したいのです。
A B C D E F G H I J K L M 1 1 2 3 4 5 6 7 8 9 10 2 data1 10 20 50 40 20 90 90 3 data2 30 80 80 4 data3 15 20 50 60 60 5 data4 50 10 20 20 6 data5 40 50 40 40
と言う風にです。
おまけでもう一つ、今回の回答のMATCH(10^17,←ここの10^17は何を意味するのですか?
範囲を変えるだけです。少し考えると分かると思いますが。 M2 =INDEX(B2:K2,MATCH(10^17,B2:K2))
お尋ねの10^17の件ですが、 範囲内の最大値より大きな数字を検索するということです。 ですから、MAX(B2:K2)より大きければ、100でも1000でもよいということです。
照合の型が省略されているのに注意して下さい。これは1を指定しているのと同じことです。 0を指定していると、検査範囲内を検索していっても、検査値は実際にはないデータ(最大値より大きい)ですので、エラーが返りますが、 1の場合は検査範囲内を検索していって、最終的にはその値がないので、範囲内にある最後のデータの 位置を返します。 (kkk)
なるほど、できました。
質問する前に自分でデータの所変えてやってみたのですが、うまくいかなかったので、
質問させていただいたのですが、データの範囲設定を間違えていたみたいで、できなかったみたいです。(初歩的ミス)
たびたびありがとうございました。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.