IF関数では「真の場合」「偽の場合」という言葉が出てきます。
一般的には、等号や不等号が成り立つ場合は真の場合、成り立たない場合は偽の場合と説明されることが多いですが、厳密にいえばこの説明は正しくありません。「真の場合」「偽の場合」とは、論理式に入力された比較演算等をしたときに、TRUEまたはFALSEを返した場合という意味です。IF関数を理解するには、真偽の意味、TRUE・FALSEの意味を理解しなければなりません。
ところで、比較演算のメリットは自動的に判定できることだけではなく、2つの集合(グループ)に分けられること、上限や下限を設定して判定できること、異常値や入力をミスを見つけることができることなどが挙げられます。比較演算のメリットを知ることで、初めてIF関数を使うことに意味があるのです。
そこで、今回はIF関数を学習する前に必須となる比較演算の基本、真偽(TRUEとFALSE)の意味、比較演算で判定することのメリットについて出題します。
目次
1.真と偽
(1)TRUEとは何か
問題
Excelで「=2>1」と入力するとTRUEになる理由を述べなさい。
解説
「=2+1」と入力したとします(参考:【Excel】足し算、引き算、掛け算、割り算の入力、かっこ、累乗、パーセント)。
これは3となります。
この式の先頭のイコールは数式の始まりを表す記号です。「2+1」の部分を計算して3と表示されます。
足し算を不等号にして「=2>1」と入力します。TRUEになります。
先頭のイコールは数式の始まりを表す記号です。足し算ではなく不等号の計算をしているものと考えられます。
「2>1」は「2は1よりも大きい」という事実ではなく、「2は1よりも大きいか?」を尋ねています(疑問形であることに注意)。
2つの値の間に不等号を入れた場合、大小関係を尋ねる演算となります。これを「比較演算」と言います(参考:【Excel】IF関数が使えない原因は「比較演算」の練習不足である)。
「2は1よりも大きい」というのは正しいです。正しい場合、Excelでは「TRUE」と表示します。日本語では「真(しん)」といいます。
足し算の場合はその計算結果を表示しますが、不等号の場合は大小の判定をした結果を表示します。
(2)FALSEとは何か
問題
Excelで「=2<1」と入力するとFALSEになる理由を述べなさい。
解説
不等号の向きを逆にして「=2<1」と入力します。FALSEになります。
先頭のイコールは数式の始まりを表す記号です。この式は「2<1」の比較演算をしています。
「2<1」は「2は1よりも小さい」という事実ではなく、「2は1よりも小さいか?」を尋ねています。
比較演算は、質問をしているだけなので事実に反する式であっても構いません。「2は1よりも小さいか?」という問いに対する答えは「いいえ」です。
誤っている場合、Excelでは「FALSE」と表示します。
質問に対する答えとして「いいえ」と答えているだけであり、エラーではありません。日本語では「偽(ぎ)」といいます。
(3)四則演算と比較演算の優先順位
問題
Excelで「=2<1+5」と入力するとTRUEになる理由を述べなさい。
解説
「=2<1」と入力するとFALSEになります。2は1より小さくないからです。
このあとに「+5」をつけます。
今度はTRUEになります。
比較演算のほかに、足し算や引き算などの計算がある場合は、優先して計算します。
この場合は「=2<6」となります。2より6のほうが大きいので、これは正しいです。したがって、判定結果はTRUEとなります。
2.セルを参照して大小を判定する
問題
セルA1に「75」と入力した。セルA1の値が60より大きいかどうかを数式で判定しなさい。また、セルA1の値が60より小さいかどうかを数式で判定しなさい。
解説
75が60より大きいかを判定するには、「=75>60」と入力すればよいです。TRUEになります。
この「75」はセルA1を参照することもできます。
この式は「セルA1の値が60より大きい」という事実を入力しているのではなく、セルA1の値が60より大きいかどうかを判定しています。判定結果はTRUEかFALSEで表示されます。
不等号を逆にすると60より小さいかどうかを判定する式となります。FALSEとなります。
これは、セルA1の値が60より小さいかどうかを判定する式であり、判定結果はFALSEです。
3.セルの値が変わることを前提としている
問題
セルA1に「75」、セルB1に「60」とそれぞれ入力した。セルA1の値がセルB1の値より大きいかどうかを数式で判定しなさい。また、この判定を数式で行うことのメリットを述べなさい。
解説
先頭にイコールを入力します。セルA1を参照します。
Excelを用いて、2つの数を比較して大小関係の判定をさせるには、先頭にイコールを入力して、比較する2つの数の間に不等号を入れます。
不等号を入れて、セルB1を参照します。TRUEになります。
ここで、セルA1を50にします。FALSEになります。
75が60より大きいことは数式を使わなくても分かります。数式を使って判定すると、セルの値を変えたときに自動的に判定結果が変わります。
また、一見してどちらが大きいか分からない場合に、明確に答えを出すことができます。
4.2つのグループに分けている
(1)TRUEとFALSEを表示するメリット
問題
セル範囲A1:A10に数値を入力した。それぞれ55000より小さければTRUEと表示しなさい。また、TRUEとFALSEを表示するメリットを述べなさい。
解説
「=A1<55000」と入力します。55000より大きいのでFALSEとなります。
オートフィルをします。55000以上の場合はFALSE、55000より小さい場合はTRUEとなります。
A列に入力した値はバラバラですが、B列はTRUEとFALSEの2種類になります。
基準となる値である55000より大きいグループと小さいグループの2つのグループに分けているのと同じです。
比較演算は、バラバラに入力された値を、2つのグループに分けることができます。
(2)2つのグループに分ける例
問題
日常生活のなかで、基準値より大きいグループと小さいグループに分ける例を挙げなさい。
解説
例えば、60点に満たない者を失格とする場合、「<60」で判定すればよいです。
遠足のお菓子は300円まで、60点より下なら失格などと、上限や下限を設定した場合は、その境界となる値で2つのグループに分けたことになります。
このほか、実績が目標より大きい場合は事前に設定していた目標を超えたことになり、それ以外は目標と同じかまたは目標を達成しなかったことになります。
このように数値を比較、判定することによって2つのグループに分けることは、世の中にはたくさんあります。
また、データがたくさんある場合はExcelで自動で仕分けをしたほうが楽な場合もあります。
5.入力ミスを見つける
問題
100点満点の試験を実施したので、A列にその点数を入力したとする。100を超える入力が無いかチェックしなさい。
解説
100点を超えていることを判定します。
100点満点の試験であれば、通常は100点以上の点数を入力することはないので、FALSEになるはずです。
1か所だけTRUEが見つかりました。
分かりにくい場合は1を掛けます(参考:【Excel比較演算応用事例】連続のカウント、数値データの複数列への振り分け - わえなび ワード&エクセル問題集)。
FALSEの場合は0、TRUEの場合は1になります。
B列を選択すると合計が「1」と表示されますので、異常な数値が1つだけあることが確認できます。
上限や下限が決まっている場合に、異常な数値をすぐに見つけることができ、誤った数値を入力していないかをチェックすることができます。
6.比較演算の応用練習
Excelの比較演算については当サイトで何回も解説しています。IF関数の論理式がよく分からない場合は比較演算をしっかりと練習したほうが良いです。詳しくは、こちらの記事をご覧ください。
- 【Excel】IF関数が使えない原因は「比較演算」の練習不足である - わえなび ワード&エクセル問題集
- 【Excel比較演算応用事例】連続のカウント、数値データの複数列への振り分け - わえなび ワード&エクセル問題集
- 【Excel】比較演算でグループとしてのフラグを立てて並べ替えをする - わえなび ワード&エクセル問題集
解説は以上です。
7.動画版はこちら(無料)
この記事は、わえなび実力養成講座「ファンダメンタルExcel13」Program 13-1、13-2 のYoutube動画を書き起こして、加筆修正したものです。
- ファンダメンタルExcel 13-1 真と偽(TRUEとFALSE)【わえなび】(ファンダメンタルExcel Program13 IF関数の基本)
- ファンダメンタルExcel 13-2 数式による判定のメリット【わえなび】(ファンダメンタルExcel Program13 IF関数の基本)