- ベストアンサー
関数で最大値などを表示したい
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
No.2です。 たびたびごめんなさい。 前回の数式ではエラーが発生します。 ↓の画像のように作業列を設けてみてください。 I6セルに =G6 J7(J6ではありません)セルに =G7 として G6~J7セルを範囲指定 → J7セルのフィルハンドルで4セルずつまとめてオートフィルで下へコピーしておいてください。 そして、B2セルに =INDEX(A:A,MATCH(MAX(I:I),I:I,0)) B3セルに =INDEX(A:A,MATCH(MAX(J:J),J:J,0)-1) 今回は配列数式ではありません。 C列数式は前回のままでOKだと思います。 今回も同順位の場合は上位の行のデータが表示されます。 検証せずに投稿してごめんなさいね。m(_ _)m
その他の回答 (2)
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 同じ票数の場合は考慮していません。 同じ票数の場合は最初に出現した人が表示されてしまいます。 とりあえず、A列は50人いるとして・・・ セル配置は画像通りとします。 B2セルに =INDEX(A$6:A$105,MATCH(MAX(IF(B$6:B$105=A2,G$6:G$105)),G$6:G$105,0)-(ROW(A1)-1)) これは配列数式になってしまいますので、Ctrl+Shift+Enterで確定! この画面からコピー&ペーストする場合は、 上記数式をドラッグ&コピー → B2セルを選択 → 数式バー内に貼り付け → そのまま(編集可能なまま) Ctrl+Shiftキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 これをB3セルまでオートフィルでコピー! C2セル(配列数式ではありません)には =INDEX(G$6:G$105,MATCH(B2,A$6:A$105,0)+ROW(A1)-1) という数式を入れC3セルまでコピーしてみてください。m(_ _)m
- aokii
- ベストアンサー率23% (5210/22062)
長と副の行合計を別々の列で合計してMAX関数を使うのが簡単です。
お礼
何度もありがとうございます! うまく出来ました。早速使って実行してみます! ありがとうございました。