エクセルで点数に応じてAからEのように5段階評価をつける成績処理を行うときにはIFS関数を使うのが一般的ですが、エクセルのバージョンによってはIFS関数が使えないことがります。
そんなときは、むりやりIF文を何重にも重ねて書いてしまいがちですが、もっとスマートなやり方があるので紹介します。
IFS関数が使えるエクセルのバージョンは「Excel2019」以降です。Excel2016の場合は、サブスクリプションタイプのOffice365からのインストールの場合のみIFS関数を使うことができます。ちなみに、IFS関数が使えないエクセルでムリヤリIFS関数を使うと「#NAME?」と表記されるエラーになります。
【やりたいこと】
点数によりAからEまでの5段階評価を設定する。
評価A | 90点以上 |
---|---|
評価B | 80点以上90点未満 |
評価C | 60点以上80点未満 |
評価D | 40点以上60点未満 |
評価E | 40点未満 |
IFS関数が使えずIF文でムリヤリ書くとこうなる…。
【ムリヤリIF文】=IF(B2<40,"E",IF(B2<60,"D",IF(B2<80,"C",IF(B2<90,"B","A"))))
【ムリヤリIF文解析】
できないことはありませんが、ゴチャゴチャしすぎて書きにくいですし、ひとつでもカッコの数がちがうとエラーになってしまいます。また、5段階から何とかなっても10段階だとキツいですよね。
そこで、別の方法を紹介します。
エクセルではvlookup関数を使えば、上に例示したような5段階評価を設定することができます。
【評価基準を設定(上の図の赤い点線内)】
点数に応じて設定する評価A〜評価Eの基準を上の図のようにシート内に設定します。
設定する点数(数値)は「以上」です。
上の例では「90点以上」で「A」、「80点以上」で「B」となります。
こうした評価基準を作成してからvlookup関数を設定します。
【 vlookup関数 】=vlookup(検索値,範囲,列番号,検索方法)
【 設定例 】=vlookup(B2,$E$2:$F$6,2,TRUE)
範囲を「$E$2:$F$6」と「$」つきで絶対参照にしているのはコピーしやすくするため。
ポイントはvlookup関数で近似一致を使用することです。
検索値に該当するものを表示するとき(例:そのIDに該当する名前を表示するとき)は完全一致を用いますが、点数をもとに5段階で評価する場合は近似一致を使います。
注意点は参照する範囲(評価基準テーブル)を数値の小さい順につくっておくことです。
大きい順につくると下記のようにエラーとなるので気をつけてください。
ここでは5段階の評価で説明しましたが、10段階の評価にわける場合でも、「vlookup関数で近似一致を使用する」方法が使えます。IFS関数が使えない場合は、ムリヤリIF文ではなく、コチラを使うことをオススメします。
くりかえしになりますが上記の方法で5段階評価をつけるときに使用するvlookup関数は近似一致のTRUEを使うことがポイントです。FALSEを指定すると下図のようなエラーとなります。
完全一致(FALSE)とは値(数字)がピッタリ同じことを意味するので参照する範囲に該当の数字がある場合(上の図なら「40」と「60」)はエラーとならずに値が表示されますが、該当の数字がない場合(上の図では「92」「59」など)はエラーとなります。
学校現場でエクセルをどのように活用できるかに絞った先生向けのマニュアル本。クエリ機能やピボット機能を校務にどのように活用できるかを事例をもとに解説しています(第1章)。
第2章の事例編では「PDFへの差し込み印刷」「フラッシュカード作成」「条件付き書式による成績確認」など先生に必須の機能を紹介。第3章テクニック編、第4章 トラブル回避編も学校でのエクセル操作に絞って解説しています。
*本書の対象はエクセルを使ったことがある先生向けです。エクセルを使ったことがない方、初心者の方には前著「先生Excel」をオススメします。(前著)初心者向け⇒先生向けエクセル講座「校務Excel」