Excelの初心者向けの講座や市販のテキストでは、IF関数を教えるときに、いきなりIF関数の構文を説明しています。
言語道断です。「IF関数で2種類の結果が出ますよ」と近道だけを教えるのは絶対に間違いです。結局、「習ったけど使えない」初心者を増やす原因になっているのではないでしょうか?
Excelの超基本である比較演算、つまり「等号・不等号」を使った計算(TRUE / FALSE)をしっかりと練習していれば、IF関数なんて「TRUE→A、FALSE→B」に置き換えるだけなのだから簡単に理解できるはずです。
そこで、今回は、IF関数を勉強する前に「等号・不等号」をどのように練習すればよいか、徹底的に解説します。
目次
問題文のあとに簡単な操作方法を解説していますが、静止画では、わかりにくいと思いますので、最後に動画のリンクを載せています。ぜひご覧ください。
- 0.準備文書について
- 1.代入のイコールと比較のイコールの違い
- 2.肉眼で分からない違いを見つける
- 3.ダブルクォーテーション
- 4.比較演算子
- 5.不等号の使い方(大小、ノットイコール)
- 6.比較の結果を数値にする
- 7.違いを見つけてカウントする
- 8.比較をするのは入力する前でも良い
- 9.左辺または右辺が計算式でも良い
- 10.複数条件
- 11.さらに比較演算の発展問題にチャレンジ!
- 12.動画版はこちら(無料)
0.準備文書について
この記事では、準備ファイル「fx5-10-a1.xlsx」「fx5-10-a2.xlsx」を使います。わえなび公式サイトにありますので、ご自由にお取りください。「5-10」の「サンプルファイル(ZIP)」です。
ファンダメンタルExcel_Program 5. 計算式の入力 | わえなび [waenavi] the Theory of Word-Excel
1.代入のイコールと比較のイコールの違い
問題
次の図で、セルB1とセルB3の値が同じかどうかを判定しなさい。
解説
先頭にイコールを入力して、セルB1を参照します。(参考:【Excel数式】セルの「参照」が分からなければ相対参照は理解できない)
これに続けて「=B3」と入力します。「=B1=B3」となります。「=(B1=B3)」と括弧を付けてもよいです。
確定するとTRUEとなります。
イコールには2つの意味があります。
先頭にあるイコールは「等しい」という意味は持っていません。計算の命令を表していて、計算した結果を最終的にセルC3に代入するという意味です(※正確には代入演算子ではない)。先頭のイコールが無かったら計算が始まりません。
式の途中にあるイコールは、左右の比較をしています。B1とB3が等しいかどうかを聞いています。
左右が等しいのかという問いに対して、YESであれば「TRUE(トゥルー)」、Noであれば「FALSE(フォールス)」という答えになります。
「TRUE」ということは、B1とB3が等しいものであると判定されたということです。
2.肉眼で分からない違いを見つける
問題
次の図で、選択肢1~5のなかで、正解の「apple」とは異なるものがある。選択肢1~5のなかで異なるものはどれか、判定しなさい。
解説
「=B1=B3」と入力します。「TRUE」になります。
これを5番までオートフィルをするには、B1を絶対参照にします。
オートフィルをします。すべて同じ「apple」に見えますが、4番と5番だけが「FALSE」になりました。異なっていると判定されました。
4番は、4文字目の「l」が全角です。見た目ではほとんどわかりません。
5番は最後にスペースが入っていますが、肉眼では分かりません。
このように、人間の目では見落としてしまうような違いを計算式で見つけることができます。
3.ダブルクォーテーション
問題
次の図で、選択肢1~5のなかで、「apple」とは異なるものがある。
選択肢1~5のなかで異なるものはどれか、判定しなさい。
解説
「=B1="apple"」と入力します。
「TRUE」になります。オートフィルをします。このようにセルではなく "文字列" と直接比較する場合は、その "文字列" をダブルクォーテーションで囲みます。(参考:【Excel】文字列結合、スペース・改行・ダブルクォーテーションの連結)
4.比較演算子
問題
セルA1の「1234」とA3:A8の値を比較したい。
比較演算子の「=」を用いてC3:C8に結果を表示しなさい。
解説
イコールのあとに「A1=A3」として、A1を絶対参照にします。
オートフィルをします。一致するところだけTRUE、そのほかはFALSEになります。
式の途中にあるイコールのように、左右を比べる記号を「比較演算子(ひかくえんざんし)」といいます。比較演算子によって比較した結果を、TRUEまたはFALSEで表す計算のことを「比較演算」といいます。
5.不等号の使い方(大小、ノットイコール)
問題
さきほどの問題で、D~H列も同じように、2行目の比較演算子で比較しなさい。
解説
まず、計算式を、A列固定の複合参照にします(=$A$1=$A3)。3行目だけオートフィルをしておきます。
比較演算子にはイコールのほかにも不等号を用いたものがあります。1つずつ実際に試してみましょう。
イコールの後に「A1<>A3」とします(ただし、$マークがついている)。Excelでは不等号を2つ使って等しくない(ノットイコール)ことを表します。等しくなければYESです。
計算結果は、等しくなければTRUE、等しければFALSEとなり、イコールの場合とは逆になります。
次に、イコールの後に「A1>A3」とします。(ただし、$マークがついている。以下省略)
1231から1233については、A1の1234のほうが大きいのでTRUEです。それ以外はFALSEになります。このように不等式「A1>A3」が成立していればTRUEになります。
今度は不等号の向きを逆にしてみます。
A1のほうが小さい場合だけTRUEになります。このように大きいものだけ、小さいものだけを見つけることができます。
不等号の向きを逆にすると、TRUE/FALSEも逆になりますが、不等号は等しい場合を含まないので、等しい場合「1234」は両方ともFALSEになります。
最後に、不等号にイコールを付けたパターンです。算数では不等号とイコールを縦向きに書きますが、Excelでは横向きに入力します。
計算結果は不等号だけの場合とほとんど変わりませんが、等しい場合「1234」は両方ともTRUEになります。イコールが成立するからです。
ちなみに、「以」は、もともと範囲の出発点や終点を表す漢字なので「範囲に含まれる」という意味を持っています。したがって、1234以上、1234以下のように「以」という漢字を使う場合はその数を含みますので、イコールが必要です。
1234未満、1234を超える、1234より大きい、1234より小さいのように、「以」という漢字を使わない場合はその数を含まないので、イコールは不要です。
6.比較の結果を数値にする
問題
A列からE列、G列からK列を比較して、異なっている個所を見つけなさい。
解説
このように大量の数値があって、人間の目でチェックすることが困難な場合、比較演算子のイコールを使えば一致しているかどうかをすぐに判定することができます。
別の列に、イコールの後に「A1=G1」とします。
同じ19819なのでTRUEです。
オートフィルをします。TRUEがたくさん並んでいる中に、1か所だけFALSEがあります。66818と68618なので、確かに違います。
ところで、TRUEとFALSEがたくさん並んでいると見落とす可能性があります。そこで、計算式を次のように修正します。比較演算をしている部分「A1=G1」にかっこをつけて、さらに「*1」と入力します。
オートフィルをします。1か所だけ0になります。アルファベットが並ぶより、少し見やすくなります。
掛け算のような四則演算をすると、TRUEは1、FALSEは0として扱われます。(パーセンテージで言うと100%と0%、テストで言うと正解1点と不正解0点というイメージです。)したがって、1をかけると、そのまま、TRUEは1、FALSEは0となります。
7.違いを見つけてカウントする
問題
A列とB列で異なっている行はあるか確認しなさい。また、何か所異なっているか、素早くカウントしなさい。
解説
A列とB列を比較します。そして、かっこをつけて、1をかけます。
4か所だけ0になります。
異なる箇所は、文字が違っていたり、全角と半角になっていたり、スペースが入っていたりしています。このように、異なっている箇所があるかをすぐに確認することができます。
ところで、比較演算子を、イコールではなく、不等号2つのノットイコールにしてみます。
0と1が逆になります。
C列を選択します。画面の右下に「合計:4」と表示されます。これで、A列とB列で4か所異なっていることがすばやくカウントできます。
仮に、この合計が0と表示されれば完全に一致していることがわかります。(※例外はあります)
8.比較をするのは入力する前でも良い
問題
次の図で、A列と同じ文字をB列に入力してタイピングの練習をしようとしている。
B列に文字を入力したときに、A列と同じものが入力できたら1点となり、違う文字を入れたら0点と表示されるようにしなさい。
解説
日本語の場合も同様にA列とB列を比較します。このとき、B列には文字を入力していませんが、かまわず数式を入力します。数値にするため1をかけます。
オートフィルをします。A列とB列の内容が異なるのですべて0(FALSE)になります。
実際に入力をして確認します。A列とB列の内容が同じになった時点で1(TRUE)に変わります。
9.左辺または右辺が計算式でも良い
問題
F列に掛け算の答えを入力しようとしている。
正解であれば採点の欄が10点となるようにしなさい。
解説
B列とD列をかけた答えが、解答欄に入力する答えと一致すれば正解です。このように比較演算子の左または右が計算式になっていても構いません。
オートフィルをします。
これで、正解・不正解の判定はできます。
1問につき10点にしたいときは、これにかっこをつけて10倍します。
オートフィルをします。不正解・無回答はFALSEなので0点です。
10.複数条件
(1)さらに加算
問題
B~D列の値に応じて、F列にポイント数を出そうとしている。10000以上であれば3ポイントとしなさい。さらに、50000以上であれば5ポイントとしなさい。
解説
B2が10000以上であるという比較の式を入力します。
FALSEです。
10000以上でTRUEになります。
かっこをつけて3倍します。
さらに50000以上で2倍にして足します。
50000以上にすると、さらに2ポイントが加算されて、5ポイントになります。
(2)重複しない条件
問題
B5がC5より大きければ3ポイント、B5=C5であれば1ポイントとしなさい。
解説
B5が大きければ3倍、等しければ1倍として、足し算をします。
B5が大きければ3ポイント、等しければ1ポイントになります。ちなみに、あわせて4ポイントになることはありません。
(3)3つの条件を満たす
問題
B8・C8・D8が3つとも90以上であれば、1ポイントとしなさい。
解説
B8が90以上であるという計算式と、C8が90以上であるという計算式と、D8が90以上であるという計算式の3つをかけます。
90以上であればTRUEで1、90未満であれば0です。このとき、1つでも条件を満たさなければ、掛け算をするとゼロになります。
3つとも90以上であれば、1X1X1で、答えが1になります。このように、比較の式を掛け算すると、すべての条件を満たしたときだけTRUEになります。
(4)3つの値が等しい
問題
B11・C11・D11の3つの値が同じであれば、1ポイントとしなさい。
解説
3つを比較するときには、2つずつ比較をします。B11とC11、C11とD11を比較をしたうえで、先ほどと同じように、掛け算をします。
これで、3つとも等しい時だけ1ポイントになります。
11.さらに比較演算の発展問題にチャレンジ!
- 【Excel比較演算応用事例】連続のカウント、数値データの複数列への振り分け - わえなび ワード&エクセル問題集
- 【Excel】比較演算でグループとしてのフラグを立てて並べ替えをする - わえなび ワード&エクセル問題集
解説は以上です。
*補足意見*
初心者にIF関数を教える前に比較演算を教えるのは遠回りだという意見があるかもしれませんが間違いです。IF関数を根本的に理解するための「近道」です。
12.動画版はこちら(無料)
この記事は、わえなび実力養成講座「ファンダメンタルExcel」Program 5-10、「Excel新演習3」Program 3-9、3-9-2 の3本のYoutube動画を書き起こして、加筆修正したものです。
- ファンダメンタルExcel 5-10 比較演算子の基本【わえなび】 (ファンダメンタルExcel Program5 計算式の入力) - YouTube
- Excel新演習3数式・計算式集中講義 3-9 比較演算子応用事例(比較の結果を数値にする)【わえなび】 - YouTube
- Excel新演習3数式・計算式集中講義 3-9-2 補講 比較演算子特講1(2回以上の比較演算)【わえなび】 - YouTube