- ベストアンサー
入力されている単語を抽出してランク付けする方法
|名前|地点|売上|順位| |小野|C |93 | 1| |佐藤|A |75 | 2| |髙橋|C |67 | 3| |鈴木|B |34 | 4| |小松|B |29 | 5| |加賀|A |15 | 6| 上記の様な表に地点別に売り上げのを順位を加えて |名前|地点|売上|順位|地点別順位| |佐藤|A |75 | 2| 1| |加賀|A |15 | 6| 2| |鈴木|B |34 | 4| 1| |小松|B |29 | 5| 2| |小野|C |93 | 1| 1| |髙橋|C |67 | 3| 2| というように地点別で順位を付けられるようにしたいのですが 地点別順位のところにどういう数式を入力すればいいのかがわかりません。 範囲を指定することで解決できそうなのですが ある言葉を(今回ならA,B,C)抽出して、それが入力されている 行を選択範囲にするというやり方がわかりません。 自分でもうまく説明できなくて申し訳ありませんが どうか教えていただけないでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
◆表が上のままでも E2=SUMPRODUCT(($B$2:$B$7=B2)*($C$2:$C$7>=C2))
その他の回答 (2)
◇SUMとIFでも出来ます。 E2{=SUM(IF($B$2:$B$7=B2,IF($C$2:$C$7>C2,1)))+1}
お礼
返事が遅くなってしまってすみませんでした。 SUMとIFだけでもできるということでなじみやすかったです。 しかし、自分の入力の仕方が間違っていたのかうまく結果が得られませんでした。 {}が抜けたのかなと思って入れてみると文字式として認識されてしまいました。 自分の勉強不足だと思います。 調べ直して活用していきたいと思います。 ありがとうございました。
- nihonjinn
- ベストアンサー率39% (79/200)
下の表のように並び返しているのですか? 並び替えしているのならE2に =countif($B$2:B2,B2) と入力して下にコピーしてください 上の数式は (1)C列を昇順に並び替え (2)最優先・・・B列を昇順(降順) 二番目・・・C列を昇順 に並び替え のどちらかで並び替えている場合のみ正しい結果が出ます。
お礼
返事が遅くなってしまってすみませんでした。 すでに下の表があるのではなく 数式を加えて下のような表にしたかったのです。 真っ先に解答してくださりありがとうございました。
お礼
返事が遅くなってしまってすみませんでした。 SUMPRDUCTという関数は今回教えられて初めて知りました。 ネットでも検索してみましたが、便利な関数ですね。 大変勉強になりました。 今の表に導入していきたいと思います。 ありがとうございました。