点数や金額をランク分けする方法は?
結論
IFS関数で複数の条件を並べてランク分けが簡潔に記述できます(2019以降)。2016以前はIF関数のネストを使用します。
詳しい解説
点数や金額をランク分けする場合、IFS関数(Excel 2019以降)を使うと複雑なネストを避けて簡潔に記述できます。`=IFS(A2>=90,"S", A2>=80,"A", A2>=70,"B", A2>=60,"C", TRUE,"D")`のように、条件と結果のペアを列挙し、最後に`TRUE`で該当なしの場合の値を指定します。Excel 2016以前ではIF関数のネスト`=IF(A2>=90,"S",IF(A2>=80,"A",IF(A2>=70,"B",IF(A2>=60,"C","D"))))`で同様の処理を実現できますが、可読性が低下します。成績ランク付けや顧客ランク分類など、複数の閾値で分類する場合に非常に便利です。
執筆・検証:田中 けんた|Excel歴15年・MOS資格保持
バージョン対応
| Excel 2016 | Excel 2019 | Excel 2021 | Excel 2024 | Microsoft 365 |
|---|---|---|---|---|
| IFS関数は2019以降(IF関数ネストで代替可能) | 対応 | 対応 | 対応 | 対応 |
実務での使用例
成績のランク付け(5段階評価)
テスト点数(A列)に応じてS/A/B/C/Dの5段階で評価。IFS関数を使うことでIF関数の多重ネストを避けて読みやすい数式に
=IFS(A2>=90,"S", A2>=80,"A", A2>=70,"B", A2>=60,"C", TRUE,"D")顧客ランクの分類(購入金額)
年間購入金額(B列)に応じてプラチナ/ゴールド/シルバー/ブロンズにランク分け。100万円以上はプラチナ、50万円以上はゴールドなど
=IFS(B2>=1000000,"プラチナ", B2>=500000,"ゴールド", B2>=100000,"シルバー", TRUE,"ブロンズ")