- みんなの回答 (3)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
回答No.3
初心者などを中心に嫌がる人も多いようだが、配列数式を使う手もある。 既回答でOKと思うが、見聞を広めるために読んでみて。 ーーー 例データ 上位3位の例とする。n=3の例. A1:J3 品名 1日 2日 3日 4日 5日 6日 7日 結果 A 30 38 23 43 20 31 8 112 B 41 28 21 25 20 24 4 94 J2セルに 式 =SUM(IF(RANK(B2:H2,B2:H2,0)<=3,B2:H2)) と入れて、SHIFT、CTRL,Enterキーを同時押しする。 縦方向に式を複写。 結果は j2:J3 === n位に、もし同じ数がある場合をどうするかで、複雑になる。 これを質問に書いてない様子から、エクセル経験は少ないとおもわれる。 しかし将来エクセルを使い続けたら、配列数式もどこかで出くわすかも。 またnがデータ数や最大順位番号を越えない、などのチェックを入れるなら、複雑になり、略。 VBAでも必要になろう。 配列数式を避けて、SUMPRODUCT関数でできるかもしれないが、未検討。 ーーー このシートを別シートにコピーし、そちらで、 B-H列で、列ソートしてB,C,D列(3位までの場合ですが)データを足す手もある。