[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『INDEXとMATCHで検索してますが、昇順にしなくても良い方法は?』(通りすがり)
現在、INDEXとMATCHで下記、検索をしていますが、 最小値を表示してしまいます。昇順に並べなくてもすむ方法はないでしょうか?
A B C D E 1 2 3 4 5 30 20 11 12 13
=INDEX(A1:E1,MATCH(20,A2:E2,1))
これで、2行目に20以下の数字があれば、E列の5を表示して しまうのですが、B列2を表示する方法はないのでしょうか?
よろしくお願いいたします。
こんなこと?
=INDEX(A1:E1,MATCH(20,A2:E2,0))
=INDEX(A1:E1,MATCH(21,A2:E2,1))で、2を表示したいのです。
こういうこと?
=INDEX(A1:E1,MATCH(1,INDEX((A2:E2<=20)*1,0),0))
(sky)
いえ、これだったら、12でも、12以下にならずに、3を表示するため不可です。
=INDEX(A1:E1,MATCH(1,INDEX((A2:E2<=12)*1,0),0))でも、4を表示したいのです。 20でも、2を表示したいのです。
=INDEX($A$1:$E$1,MATCH(MAX(INDEX(($A$2:$E$2<=20)*$A$2:$E$2,)),$A$2:$E$2,0)) (NB)
こんな感じでしょうか。30より大きい数値だとエラーになりますが。
(yabeetsu)
2行めに同じ数値があったら駄目だけど。 あと、INDEXもMATCHも使ってないけど。
=SUMPRODUCT(A1:E1*(A2:E2=MAX(A2:E2*(A2:E2<=G1))))
追記 この式はG1に検索したい値が入ってる場合だよ。 もし、20固定だったらG1を20に置き換えてね。
(春日野馨)
=MOD(MAX(INDEX(($A$2:$E$2<=20)*$A$2:$E$2+$A$1:$E$1/10000,)),1)*10000 (NB)
他の皆様の数式だと、このような中間値はそれぞれ違う数値が返るので、私の早とちりだったらすみません。
(yabeetsu)
>これで、2行目に20以下の数字があれば ってとこから2行めの20以下の最大値に対応する1行めの値って判断したよ。
あと、 =INDEX(A1:E1,MATCH(20,A2:E2,1)) の式で2行めが昇順に並んでいたら目的の値が求められるってとこも判断の根拠になるよ。 (春日野馨)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.