こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル関数で、ある検索条件で最大値を表示するには

マクロの知識がないため、関数での対応方法を教えてください。

No. A B
1   1 0
2   1 1
3   1 2
4   1 3
5   2 0
6   2 1
7   3 0
8   3 1
9   3 2
・・・

上記データでA列が同じ数字なら、B列の最大値をC列に表示したいです。
この場合、A1~A4は1なので、B1~B4の最大値3をC1~C4に表示 と言う具合です。
これが1000行以上あります。

良い方法はございませんか?

投稿日時 - 2011-01-26 17:41:47

QNo.6476624

困ってます

質問者が選んだベストアンサー

一例です。
C1に=MAX(IF(A$1:A$1000=A1,B$1:B$1000))を入力、入力完了時にshift+ctrl+enterキーを同時押下して下方向にコピー

投稿日時 - 2011-01-26 18:21:25

お礼

早速のご回答ありがとうございます。
まさに欲していた結果でした。
これで仕事がはかどります。
ありがとうございました。

投稿日時 - 2011-01-26 18:44:33

ANo.2

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

こんにちは。

まずは値の並べ方ですが、A昇順+B降順でソートは可能でしょうか。
例の場合ですと、以下のようになります。
No. A B
1   1 3
2   1 2
3   1 1
4   1 0
5   2 1
6   2 0
7   3 2
8   3 1
9   3 0
・・・

可能であれば以下の式でいけます。
(1)C1のセルにはB1と同じ値(3)を手入力します。
(2)C2に以下の式をいれます。
=IF(A1=A2,IF(C1>B2,C1,B2),B2)

式の意味・・・
A1とA2が同じであれば、C1とB2を比較して大きい方を採用します。
A1とA2が同じでなかればB2をそのまま採用します。

この式をC列全部にコピーすれば終わりです。

投稿日時 - 2011-01-26 18:10:48

お礼

早速のご回答ありがとうございます。
順序を入替える発想がありませんでしたが、
最終的には昇順でのデータが必要なので、
ひと手間要りますね。

投稿日時 - 2011-01-26 18:42:48

あなたにオススメの質問