Excelで成績処理
Excelの関数を工夫して課題を解決するのは,まるでパズルを解くようで楽しいと思います。今日は,友人からの質問を元に,下のような課題を設定し,チャレンジしてみました。
(課題)ABCで成績が記入された下のような名簿がある。Aを5点,Bを3点,Cを1点として得点欄に合計点を表示せよ。
ABCというのは,Excelにとっては文字です。これを得点という数値に変換しなければならないのですが,適当な関数が見つかりません。最初は,新規の列を挿入して,それぞれをIF関数を使って数値に変換して合計しようと思いました。実際にやってみると,表が美しくないのです。
そこで,ちょっと強引ですが,COUNTIF関数を使って範囲内のA・B・Cそれぞれの個数を数えさせ,それに得点をかけて合計するという方法を考えました。セルE3に入力した関数は,以下のようになります。
=COUNTIF(B3:D3,"A")*5+COUNTIF(B3:D3,"B")*3+COUNTIF(B3:D3,"C")*1
最後の*1は,なくてもいいのですが,配点が変わった時に対応できるようにあえて書いておきました。これを下のセルにコピーすれば出来上がりです。
関数を以下に美しく書くかということにこだわってみるのも,おもしろいと思います。上の式をもう少しダイエットできないかな?
謝謝。
投稿: sunshin | 2006-03-01 01:00