プロが教えるわが家の防犯対策術!

AVERAGEIFはありますが、maxでほしいのです。どうやって作れますか?

詳細:
B列が「あ」のデータだけ抜き出し、A列のmax値を得たいのです。
A    B
1   あ
2   い
4   あ
8   え
15  い
この例ではmax値は4です。

A 回答 (4件)

>MAXIFはどうすればいい?


MAX関数の括弧内(配列)を前処理しなければなりません。
前処理の数式=(B1:B5="あ")*A1:A5
従って、=MAX(B1:B5="あ")*A1:A5 → MAX({1;0;4;0;0}) → 4
Excelでは計算結果を配列で返すことを要する数式を入力時にCtrlとShiftを押しながらEnterキーを打鍵することになっています。
確定した状態を数式バーで見ると{=MAX(B1:B5="あ")*A1:A5}のように数式を大括弧で括られています。

SUMPRODUCT関数の引数としてMAX関数の返り値を設定するとEnterキーで確定しても目的通りの値が返ります。
=SUMPRODUCT(MAX((B1:B5="あ")*A1:A5))
どのような数式を使っても結果が目的に合えば良いのでお好きな方法で解決してください。
    • good
    • 7
この回答へのお礼

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

お礼日時:2014/09/22 18:20

すいません間違えました。


MAX値の合計になりますね。
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2014/09/22 18:19

使われておられるEXCELが2007以降なら


”SUMIFS”を使うのはどうでしょうか?
条件1にB列の「あ」
条件2にA列の「最大値」

=SUMIFS(合計対象範囲, 条件範囲 1, 条件 1, 条件範囲 2, 条件 2, ...)
    • good
    • 7

配列数式(数式入力後にCtrl*Shift+Enterで確定)を使えば出来ますよ。



・MAX関数
=MAX(IF(B1:B5="あ",A1:A5))

・MIN関数
=MIN(IF(B1:B5="あ",A1:A5))
    • good
    • 6
この回答へのお礼

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

お礼日時:2014/09/22 18:18

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