エクセル

【Excel】エクセルでa以上b以下ならばc(未満も、90点以上はa、80点以上90点未満はbなど複数)を表示する方法【IFSやVLOOKUP関数】

当サイトでは記事内に広告を含みます

エクセルでデータを扱っていると、「〇点以上なら合格」「△以上□以下ならばA判定」「80点以上90点未満はB評価」といった範囲指定で判定・表示したい場面で困った経験はありませんか?

この記事では【Excel】エクセルでa以上b以下ならばc(未満も、90点以上はa、80点以上90点未満はbなど複数)を表示する方法【各関数】について解説していきます。

ポイントは

・AND関数とIF関数で範囲指定判定
・IFS関数で複数の範囲条件を階層的に判定
・VLOOKUP関数の近似一致で効率的な判定

です。

それでは詳しく見ていきましょう。

目次

エクセルでa以上b以下ならばcを表示する方法1【AND関数とIF関数の組み合わせ】

特定の範囲内(a以上b以下)に値が含まれる場合に特定の文字を表示したい場合、AND関数とIF関数の組み合わせが最も基本的です。

AND関数を使えば、下限以上かつ上限以下という2つの条件を同時に判定でき、IF関数と組み合わせることで範囲に応じた値を表示できます

この方法は特に、点数による成績判定や、数値範囲によるランク分けに威力を発揮します。

具体的な手順

まず、判定したいデータを用意しましょう。

例えばA列に「点数」が入力されており、1行目はヘッダーの場合を考えます。

「80点以上90点未満ならばB」と判定したい場合、B2セルに以下のような数式を入力します。

数式は以下のように記述します。

=IF(AND(A2>=80,A2<90),”B”,””)

この数式をオートフィル機能で下方向にコピーすれば、全てのデータについて判定が行われます。

AND関数内の条件がすべて満たされた場合(80以上かつ90未満)のみ「B」が表示され、条件を満たさない場合は空白になります。

「以上」は「>=」、「以下」は「<=」、「未満」は「<」、「より大きい」は「>」という記号を使い分けることがポイントでしょう。

例えば「60点以上80点以下ならばC」という判定なら以下のようになります。

=IF(AND(A2>=60,A2<=80),”C”,””)

この方法は単一の範囲判定に非常に有効です。

エクセルで複数の範囲条件(90点以上はA、80点以上90点未満はBなど)を判定する方法2【IFS関数での階層的判定】

複数の範囲条件を一度に判定したい場合は、IFS関数が非常に便利です。

IFS関数を使えば、複数の条件を上から順に評価して、最初に真になった条件の結果を返すため、点数によるA・B・C・D判定などが簡潔に記述できます

これにより「90点以上はA」「80点以上90点未満はB」「70点以上80点未満はC」といった複数階層の判定が効率的に行えます。

設定方法

IFS関数を使った基本的な数式は以下の形になります。

ここに図を入れる

ここに図を入れる

例えば点数に応じてA・B・C・Dの評価を付ける場合、以下のように記述しましょう。

=IFS(A2>=90,”A”,A2>=80,”B”,A2>=70,”C”,A2>=60,”D”,TRUE,”F”)

この数式は上から順に条件を評価し、最初に真になった条件の結果を返します。

– 90以上ならA
– 80以上(かつ90未満)ならB
– 70以上(かつ80未満)ならC
– 60以上(かつ70未満)ならD
– それ以外(60未満)ならF

IFS関数の利点は、各条件で「未満」を明示的に書く必要がないことです。

上から順に評価されるため、A2>=80という条件は自動的に「80以上90未満」を意味するでしょうか。

最後の「TRUE,”F”」は、すべての条件に該当しない場合のデフォルト値として機能します。

 

より複雑な例として、境界値を含む・含まないを細かく制御する場合は以下のようになります。

=IFS(A2>=90,”A”,AND(A2>=80,A2<90),”B”,AND(A2>=70,A2<80),”C”,A2<70,”不合格”)

この記述方法なら、各範囲の境界を明確に定義できます。

IFS関数が使えない場合の代替方法

Excel 2016以前のバージョンでIFS関数が使えない場合は、IF関数をネスト(入れ子)にして同じ結果を得られます。

=IF(A2>=90,”A”,IF(A2>=80,”B”,IF(A2>=70,”C”,IF(A2>=60,”D”,”F”))))

この方法は読みにくくなりがちですが、古いバージョンのエクセルでも確実に動作します。

 

エクセルで範囲判定を効率的に行う方法3【VLOOKUP関数の近似一致活用】

大量の範囲判定を行う場合や、判定基準が頻繁に変わる場合は、VLOOKUP関数の近似一致機能を使う方法が効果的です。

この方法なら、判定基準を別表にまとめておくことで、数式を変更せずに基準だけを更新できます。

複雑な範囲判定を管理しやすくしたい場合、この方法が最も実用的かもしれません。

実践的な使用例

まず、判定基準表を別の場所に作成します。

 

例えばD列E列に以下のような評価用テーブル(基準表)を作成しましょう。

D列(点数の下限):0、60、70、80、90
E列(評価):E、D、C、B、A

この基準表を使って、VLOOKUP関数で評価を自動判定します。

=VLOOKUP(A2,$D$2:$E$6,2,TRUE)

この数式のポイントは、最後の引数を「TRUE」(または省略)にすることで、近似一致検索を行うことです。

VLOOKUP関数は、検索値以下の最大値を探して対応する結果を返します。

例えば85点の場合、基準表の80を選択して「B」を返します。

注意点として、基準表の点数列(D列)は必ず昇順に並べる必要があります。

降順や不規則な順序だと正しく判定できません。

複雑な範囲条件の応用

より高度な方法として、範囲ごとに異なる処理を行う場合の応用例もあります。

例えば「90点以上は合格・優秀」「80点以上90点未満は合格・良好」「70点以上80点未満は合格・普通」「70点未満は不合格」といった複数の情報を表示する場合、以下のように記述します。

=IFS(A2>=90,”合格・優秀”,A2>=80,”合格・良好”,A2>=70,”合格・普通”,TRUE,”不合格”)

また、範囲判定の結果に応じて数値を返したい場合もあります。

例えば「90点以上は10ポイント加算」「80点以上90点未満は5ポイント加算」といった処理は以下のようになるでしょう。

=IFS(A2>=90,A2+10,A2>=80,A2+5,A2>=70,A2+2,TRUE,A2)

さらに、範囲判定と他の条件を組み合わせることも可能です。

例えば「点数が80点以上かつ出席率が90%以上ならA」という複合条件の場合:

=IF(AND(A2>=80,B2>=0.9),”A”,IF(A2>=70,”B”,”C”))

この方法により、より実務的な複雑な判定基準に対応できます。

まとめ エクセルでa以上b以下ならばcを表示する方法(未満・複数範囲・各関数)

エクセルでa以上b以下ならばcを表示する方法をまとめると

– AND関数とIF関数の組み合わせ:下限以上かつ上限以下という範囲条件を判定し、該当する場合に特定の値を表示
– IFS関数での階層的判定:複数の範囲条件を上から順に評価し、90点以上はA、80点以上90点未満はBといった多段階判定を簡潔に記述
– VLOOKUP関数の近似一致:判定基準を別表で管理し、数式を変更せずに基準更新が可能な柔軟な判定を実現
– IF関数のネスト:古いバージョンでも使える複数範囲判定の代替方法
– 複合条件の応用:範囲判定と他の条件を組み合わせた高度な判定

これらの方法を状況に応じて使い分けていけば、ほとんどの範囲判定作業を効率的に行えます。

特にIFS関数は最も読みやすく管理しやすいため、Excel 2016以降を使っている場合はこの方法をマスターすることをおすすめします。

ただし、判定条件が非常に多い場合や頻繁に変更される場合は、VLOOKUP関数で基準表を使う方法が保守性に優れています。

必要に応じて基準表を別シートに配置したり、名前付き範囲を使ったりするなど、管理のしやすさにも配慮しましょう。

エクセルの範囲判定機能を正しく理解して、効率的なデータ分類と評価を実現していきましょう!

ABOUT ME
white-circle7338
アラサーの男性です。自分が今まで経験・勉強してきた「エクセル」「ビジネス用語」「生き方」などの情報を、なるべくわかりやすく、楽しく、発信していきます。 一緒に人生を楽しんでいきましょう