Excel (VBA)

Excel VBAに関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(指定なし : 指定なし)
集計方法
投稿日時: 23/11/17 02:16:12
投稿者: すけすけ

以下エクセルで記載した内容を設問ごとに正解した場合に
ユーザーごとに合計点を集計して、正解が多いユーザー名の順に並べる方法はありますでしょうか。
また各設問は1点ずつですが、最終問題のみ2点と換算して合計を集計したいです。
 
設問1
#  ユーザー名 回答
1 a君   選択肢1
2  b君   選択肢2
3 c君 選択肢1
 
正解は選択肢1
 
設問2
#  ユーザー名 回答
1 b君   選択肢1
2  a君   選択肢2
3 c君 選択肢1
 
正解は選択肢1
 
設問3
#  ユーザー名 回答
1 b君   選択肢1
2  a君   選択肢2
3 c君 選択肢1
 
正解は選択肢2

回答
投稿日時: 23/11/17 07:59:11
投稿者: simple

ワークシート関数だけでもできそうですね。
・各問題の得点は、IF関数で計算できます。
・それをまとめて、各問題にコピーペイストします。
・各人毎の合計は、SUMIF関数で計算できます。
・あとは、得点の降順にソート機能を使えばよいのでは?
VBAをご希望なんですか?(時々、発言するフォーラムを間違える方がいらっしゃるので)
 
もし、VBAでということなら、
・どこまでご自身で取り組まれているのか、
・詰まっているのはどこかを知らせてください。
また、行番号、列番号を明示されると議論しやすいでしょう。
 
コード作成の丸投げは、こちらの管理者がNGを出しているようです。
(「Q&A掲示板ご利用上のお願い」参照ください。)

回答
投稿日時: 23/11/17 12:28:51
投稿者: simple

>・各問題の得点は、IF関数で計算できます。
「得点は、回答の右の列に書き込みます」という説明が抜けていました。

回答
投稿日時: 23/11/18 10:40:03
投稿者: simple

すけすけ(23/11/18 01:39:02) さんの引用:
以下エクセルで記載した内容を
ユーザーごとに合計点を集計して、正解が多いユーザー名の順に並べる方法はありますでしょうか。
例では2問にしましたが、これが50問あり、集計方法に困っておりまして。
 
設問1
a君 1点
b君 2点
  
設問2
b君 2点
a君 1点

(1)B列の得点は数値だけであり、表示が G/標準"点" になっているものとする。
(2)以下で合計処理を行う。
      D列     E列
1行   氏名    得点合計
2行   a君     =SUMIF($A$1:$A$200,D2,$B$1:$B$200)
3行   b君     =SUMIF($A$1:$A$200,D3,$B$1:$B$200)
(3)ソート
D1:E3を選択して、
・E列(得点合計)を優先キーに指定し、
・降順に(大きい順)にソート
 
マクロにしたいなら、以上の動作をマクロ記録すればOK(幾分修正したほうがよいこともあるかも)。
# 新しいスレッドを建てる前にすることがあると思いますよ。

回答
投稿日時: 23/11/18 15:48:13
投稿者: WinArrow

すけすけ さんへ
  
同様の質問をタイトルだけ変えていくつも質問しないでください。
  

トピックに返信