• ベストアンサー

エクセル関数

エクセルで評価表を作成しています。 達成率に対しての配点を自動に入力できる様な関数があれば教えてください。 (1) 50%未満は0点。 51%のときは0.5点 52%のときは1点・・・・・・・ と、0.5刻みで点数が上がっていく場合。 (2) 10%未満は0点 11%のときは0.2点 12%のときは0.4点・・・・・・・ と0.2刻みで点数が上がっていく場合 スミマセン。。説明が下手ですが、 わかる方、なるべく早くご回答を頂きたいです。。。。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.3

セルに百分率で入っているのか(50%=0.5)、数字がそのまま入っているのか(50%=50)解りませんので2パターン提示します。 (1)0.5刻み 百分率で入っている場合:=MAX(0,A1-0.5)*50 数字がそのまま入っている場合:=MAX(0,A1-50)/2 (2)0.2刻み 百分率で…:=MAX(0,A1-0.1)*20 数字が…:=MAX(0,A1-10)/5 合っている方を使って下さい。

misasshi
質問者

お礼

ありがとうございます。 上手く出来ました。 感謝です。

その他の回答 (3)

  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.4

自分なら配点の表を作ってVLOOKUP関数で参照するなあ。 配点の変化率が一定でないものも作れるから数式を作るのが苦手ならそのほうが楽に処理できると思うんです。 配点の表を見るだけでどんな配点がされるのか一目で分かりますしね。

misasshi
質問者

お礼

早くに回答頂きありがとうございました。 VLOOKUPで参照する方法を使っていたのですが、データが多くなってしまい悩んでおりました。

  • eden3616
  • ベストアンサー率65% (267/405)
回答No.2

A列に評価対象 B列に数式 を入れるものとします。 (1)(2)ともに「未満」ではなく「以下」という事で解釈いたします。 (1) A列 49 50 51 52 53 54 とある場合、B1セルに「=IF(A1>50,(A1-50)*0.5,0)」を入れて下へオートフィルしてください (2) A列 9 10 11 12 13 14 とある場合、B1セルに「=IF(A1>10,(A1-10)*0.2,0)」を入れて下へオートフィルしてください (1)(2)ともに以下の数式になります。 =IF(【評価対象のセル】>【0点とする区切り値】,(【評価対象のセル】-【0点とする区切り値】)*【増加値】,0) ※ 添付画像のC列はB列に実際に入っている数式を列記したものです

misasshi
質問者

お礼

画像まで添付して頂きありがとうございました。 この方法でも可能なんだと、勉強になりました。

  • usami33
  • ベストアンサー率36% (808/2210)
回答No.1

例 =(A1-50)*0.5 =(A1-10)*0.2

misasshi
質問者

お礼

シンプルな計算でも可能なんですね。。。 勉強不足でした。 ありがとうございました。