火曜日, 5月 28, 2019

Excelで数式は入れ子処理なら威力倍増

Excelの関数は入れ子にして使うと桁違いに便利になります。今回は試験の結果で成績を付けるデータを元に、試験当日に欠席した学生が出た場合の処理を整理してみました。

数式は、
順位(H4)が
=RANK.EQ(G4,G$4:G$13,0)

成績(I4)が
=IF(G4>=300,"合格","不合格")

となります。欠席した学生のデータは無いので、順位は[最下位]で、成績は[不合格]となります。しかし、体調不良や交通駅間の遅延などの理由は考慮しなくてはなりません。そうなると一律[不合格]というのは不自然ですね。そこで数式にIF文を追加して以下の用に修正視します。

順位(H4)を
=IF(G4=0,"欠席",RANK.EQ(G4,G$4:G$13,0))

成績(I4)を
=IF(G4>=300,"合格",IF(G4=0,"欠席","不合格"))

に修正するだけです。

上は修正結果です。これで問題は解決ですが、学生が多い場合はモー宇少し目立った方がいいですね。ただし、数式だけで色を付けることは現状のExcelでは不可能なので、条件付き書式を使います。
条件付き書式から[新しいルール]>[クラシック]>[設定の値を含むセルだけの書式設定]>[書式ルールの編集]を選びます。あるいは、条件付き書式から[ルールの管理]>[書式ルールの編集]を選んで適宜設定を行います。

[ルールの管理]画面

[書式ルールの編集]画面

これで、欠席にて試験を受けていない学生がいる場合は直ぐに目視することが出来るようになります。

Excel 365 2018