• ベストアンサー

エクセル関数で・・

お世話になります。 以下の数値があります。 A B C 1 A 1.4% 2 B 2.0% 3 C 10.0% 4 D 15.0% B列を検索して、10.0%以上のときに、C列にA列の値を上から順に返したいのですが、どのような計算式をいれればよいでしょうか? 上記の場合、セルC1に"C",セルC2に"D"が返ることになります、 すいませんが、どなたかご教授お願いいたします

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

  • ベストアンサー
  • rin01
  • ベストアンサー率43% (33/76)
回答No.4

>検索する行数が増えたら、どこをかえればいいのでし >ょう?? =INDEX(A:A,100-LARGE(INDEX(($B$1:$B$100>=0.1)*100-ROW($1:$100),),ROW(A1)))&"" こんな感じです。 100行にしました。 。。。。Rin

towa2005
質問者

お礼

ありがとうごさいまーす^^ 助かります

その他の回答 (3)

  • rin01
  • ベストアンサー率43% (33/76)
回答No.3

Rinで~す。。。 すみません。 絶対参照にするの忘れていました。。。(_ _); C1: =INDEX(A:A,4-LARGE(INDEX(($B$1:$B$4>=0.1)*4-ROW($1:$4),),ROW(A1)))&"" でした。。。♪♪

towa2005
質問者

お礼

ご丁寧にありがとうございます^^ 検索する行数が増えたら、どこをかえればいいのでしょう?? セルのとこだけですかね?? 4・・・の意味は???

  • rin01
  • ベストアンサー率43% (33/76)
回答No.2

こんばんは~♪ こんな式でも良いですね~。。。 C1: =INDEX(A:A,4-LARGE(INDEX((B1:B4>=0.1)*4-ROW(1:4),),ROW(A1)))&"" 下にコピーします。 Rinでした~♪♪

towa2005
質問者

お礼

ほんとですね^^ できましたあ~。ありがとうございます

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

まず確認ですがB列は0.014、0.02のような数値が入っていて書式が「パーセント」になっているで良いでしょうか。 C1セルに =INDEX($A$1:$A$4,SMALL(IF(B1:B4>=0.1,ROW(B1:B4),99999),ROW())) をペースとしてShift+Ctrl+Enterで確定。C2以下はC1をコピー。 該当するセルがなくなると#REF!エラーになります。もしエラーがいやならIF関数で判定するか、条件付き書式で「エラーの時文字色を白にする」などを追加して下さい。

towa2005
質問者

お礼

ありがとうございます^^できました。。こんなに難しい関数つかわないといけなんですね。。 VBAでもできるんでしょうか?最後のShift+Ctrl+Enterが気になりました・・・ちなみに、IF関数では今回の場合、できないんでしょうか? ずっとこれで考えたんで気になってって・・