アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルのC列に数値データが115件分入っています。
数値の高い順で全体の10%に【ア】次の20%に【イ】次の30%に【ウ】…という結果をD列に表示させたいのです。
数値は別のファイルからVlookUPでリンクしていて毎日変動しますし、それぞれを別の人間が使用します。
そのため、数値の高い順に並び替えて11番目までに【ア】と直接入力するのではなく、あらかじめ関数を入力しておきたいのです。
D列に入力する関数(数式)を教えて下さい。
よろしくお願い致します。

A 回答 (5件)

やりたいことを書く前に、エクセルの関数の解説書を手元におき、課題に向きそうな、どんな種類の関数が有るか勉強しましたか。


質問解決に近そうな、PERCENTRANKという関数が有るが、それでよいか、ダメならどこがだめか勉強すること。
WEBでもGoogleで「エクセル PERCENTRANK」で照会すると、たくさん解説記事が出る。エクセルの他の関数も同じ。まず勉強してみてからだ。
    • good
    • 0

=LOOKUP(PERCENTRANK($C$2:$C$116,C2,3),{0,0.7,0.8,0.9},{"","ウ","イ","ア"})


下へオートフィル
でしょうか?
同じ値があるときをデータ数を少なくして検討してください
「エクセルで数値の高い順の○%は△と表示さ」の回答画像2
    • good
    • 0

 お示しの条件では、10%ごとの境界線で同率の場合には誤差が生じるのは仕方ありませんね。


="【" & IF(MIN(A:A)=A1,"ア",MID("アイウエオカキクケコ",ROUNDUP(PERCENTRANK(A:A,A1)*10,0),1)) & "】"
ぐらいでいかがでしょうか?
    • good
    • 0

[回答番号:No.2] の DOUGLAS_ です。



 失礼いたしました。
>C列に数値データが115件分入っています。
>D列に入力する関数(数式)を教えて下さい。
でしたね。

D1:
="【" & IF(MIN(C:C)=C1,"ア",MID("アイウエオカキクケコ",ROUNDUP(PERCENTRANK(C:C,C1)*10,0),1)) & "】"
でどうぞ。

>毎日変動します
 C列に [RAND 関数] で乱数を発生させて数回試行してみましたが、常に、添付画像のように、各位の値が「12,11,12,11,12,11,11,12,11,12」のままでした。
「エクセルで数値の高い順の○%は△と表示さ」の回答画像4
    • good
    • 0

ん~。

。。どうも、たびたび申し訳ございません。 <(_ _)>
>数値の高い順で全体の10%に・・・
でしたね。
="【" & IF(MIN(C:C)=C1,"コ",MID("コケクキカオエウイア",ROUNDUP(PERCENTRANK(C:C,C1)*10,0),1)) & "】"
ですね。

 また、間違っておりましたら、応用してお考えください。
    • good
    • 0

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