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

こんばんは
下記のD列の順位を関数で計算する方法を教えてください。
C列の点数をもとにA列のグループ別の順位を昇順でつけたいのです。
宜しくお願い致します。



Aグループ  B氏名  C点数 D順位
1        あ    10    1
1        い    20    2
1         う    30    3
1        え    40    4
1        お    50    5
2        か    50    4
2        き    40    3
2        く     30    2
2        え    20    1
2        お    80    5
3        え    20    2
3        い    90    5
3        う    10     1
3        あ    50    3
3        お    60    4

A 回答 (4件)

 同じグループ内で点数の低い順番に、D列の順位を付けるという事で宜しいのですね。



 今仮に、「Aグループ」が入力されているのが列であり、
「B氏名」が入力されているのがB列であり、
「C点数」が入力されているのがC列であり、
「D順位」が入力されているのがD列であり、
「B氏名」の列が「あ」となっているセルがB2セルであるものとします。
 その場合、まず、D2セルに次の関数を入力して下さい。

=IF(AND($A2<>"",ISNUMBER($C2)),COUNTIFS($A:$A,$A2,$C:$C,"<"&$C2)+1,"")

 そして、D2セルをコピーして、D3セルに貼り付けると良いと思います。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ご回答の通り貼り付けたところ、目的の順位が返ってきました。
最近、関数の勉強を始め3冊の参考書を勉強しましたが奥が深いですね。まだまだ分からないことばかりです。ご回答を理解できるようこれから考えてみます。

お礼日時:2012/10/10 08:25

D2セルには次の式を入力して下方にドラッグコピーしてもよいでしょう。



=IF(C2="","",RANK(C2,INDEX(C:C,MATCH(A2,A:A,0)):INDEX(C:C,MATCH(A2,A:A,0)+COUNTIF(A:A,A2)-1),1))
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
回答頂いた関数を入力したところ目的の順位が返ってきました。

色々な方法があるんですね。
目的は達成できたので皆様のご回答を理解できるよう、自分で理解できるように考えてみます。

お礼日時:2012/10/10 08:18

こんばんは!


COUNTIFS関数でできそうな感じですが・・・
手元にExcel2007がないので、Excel2003でやってみました。

↓の画像のように作業用列を3列使ってしまいます。

作業列1のF2セルに
=IF(A2="","",SMALL(IF($A$2:$A$1000=A2,$C$2:$C$1000),COUNTIF($A$2:A2,A2)))
これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定します。

作業列2のG2セルに
=IF(A2="","",A2&"_"&F2)

作業列3のH2セルに
=IF(A2="","",COUNTIF($A$2:A2,A2))
という数式を入れF2~H2セルを範囲指定 → H2セルのフィルハンドルでずぃ~~~!っと下へコピーしておきます。

最後にD2セルに
=IF(A2="","",INDEX(H:H,MATCH(A2&"_"&C2,G:G,0)))
という数式を入れオートフィルで下へコピーすると
画像のような感じになります。

この程度でごめんなさいね。m(_ _)m
「EXCEL2007でグループ別の順位を昇」の回答画像2
    • good
    • 0
この回答へのお礼

ご丁寧に写真まで添付頂きありがとうございます。
配列数式というのが勉強不足で分からなかったので時間のあるときに勉強してみます。ご回答頂いた関数は後で試してみます。

お礼日時:2012/10/10 08:08

D2には


=COUNTIFS(A:A,A2,C:C,"<"&C2)+1
と記入し、以下コピーしておきます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
私のやり方がまずいのか、うまくできませんでした。
ありがとうございました。

お礼日時:2012/10/10 08:04

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