dポイントプレゼントキャンペーン実施中!

エクセル2010を使用しています。
指定区間内の最大値を返す関数を教えてください。

たとえば、
A列 B列
0  1.1
1  1.2
3  1.4
4  1.1
5  1.0
6  1.6
7  1.3
8  1.5
9  1.5
10  1.3

のような、配列で、
A列に(たとえば)4 の値を示した行のB列のセルから
A列に(たとえば)9 の値を示した行のB列のセルまで
の最大値を返す
です。
max 関数に、address vlook match index の関数をくみあわせたりしましたが、うまくいきません。
どうぞよろしくお願いします。

A 回答 (3件)

こんばんは。



関数は、不得意ですが、試してみました。

D1:4  E1:9
と置いて、任意のセルに以下のように置きます。

1.は、INDEXを使ったもの。行数の大きい小さいはありません。
=MAX(INDEX($A$1:$B$10,MATCH(D1,$A$1:$A$10,0),2):INDEX($A$1:$B$10,MATCH(E1,$A$1:$A$10,0),2))

2.OFFSET 関数を用いたもの。ただし、E1の検索した行数 >D1 のD1の検索した行数が成り立つものとします。

=MAX(OFFSET(B1,MATCH(D1,$A$1:$A$10,0),,MATCH(E1,$A$1:$A$10,0)-MATCH(D1,$A$1:$A$10,0),))
    • good
    • 0
この回答へのお礼

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

お礼日時:2015/02/04 22:22

添付図参照


F2: =MAX(OFFSET(B1,MATCH(D2,A:A,0)-1,,MATCH(E2,A:A,0)-MATCH(D2,A:A,0)+1))
「エクセル 関数 指定区間内の最大値を返す」の回答画像3
    • good
    • 0
この回答へのお礼

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

お礼日時:2015/02/05 11:10

こんばんは!


色々やり方はあると思いますが、一例です。

↓の画像でE4セルに
=IFERROR(MAX(INDIRECT("B"&MATCH(D1,A:A,0)&":B"&MATCH(D2,A:A,0))),"")
という数式を入れています。

D1・D2セルのデータを入れ替えるたびに結果が表示されると思います。m(_ _)m
「エクセル 関数 指定区間内の最大値を返す」の回答画像1
    • good
    • 0
この回答へのお礼

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

お礼日時:2015/02/04 22:08

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