比較演算子「=」のお話

Excelの計算式ですが、はじめに「=」が入る、これはどの教科書にも載っている、Excelのキホンです。
ただ、変化球で「-」からはじめても計算式になりますし、関数であれば「@」で始めることもできます。
これは、他の表計算ソフトで作成した計算式でもきちんと処理できるようになっているからです。
今回紹介するのは、そういう変化球ではなくて、Excelの計算式の「=」ってなんだろうなってお話です。

Excelの計算式で「=」が入るケース

Excelの計算式の中で「=」が入るのは大きく分けて2つのケースです。
1つは先ほどもお話した、計算式である場合のはじめに入る「=」。
もう一つは、「IF(A1=””」の比較するための「=」です。
はじめの「=」はキホンなので、もう一つの方の「=」のお話を深く掘り下げようと思います。

比較演算子

IF関数などの中の、「同じである」を表す「=」。これがまた、よく考えると面白い話が出てきます。
数式「=A1=1」。

この計算式って実際にエラーにならないんです。
答えは、セルA1が1ならTRUE、1じゃなかったらFALSEになります。

TRUEは「そうだ」、FALSEは「そうではない」という意味ですね。
合ってるかどうかの判定だけならこういう計算式もアリなんじゃないかなって思います。

論理積と論理和

「=(A1=1)*(A2=1)*(A3=1)*(A4=1)」
こういう式があって、セルA1からA4まですべて1でなければ答えは0です。すべて1だと1になります。
「=(A1=1)+(A2=1)+(A3=1)+(A4=1)」
この式の場合は、セルA1からA4まですべて0の場合、答えは0です。すべて1だと4になります。
このことから、「A1=1」の答えがTRUEなら数値の1、FALSEなら0と判定されていることがわかります。
何を言いたいのか答えを先に言ってしまうと、FALSEは0なんです。TRUEは0ではないものなんです。
すべてかけ算でくっつけた式を論理積、足し算でくっつけたものを論理和といいます。
論理積を求める関数がAND関数で、なおかつ、すべての条件が一致したらという関数です。
論理和を求める関数がOR関数で、または、どれか一つの条件が一致したらという関数です。
実は、AND関数はかけ算でOR関数は足し算で、0か0ではないかで判断しているということを言いたかっただけでした。
でもこれわかってると、次のような計算式を組みことができます。

=IF((A1<>””)*(A1>=0)*(A1<=100),”PASS”,”NG”)
セルA1が空白ではなく、0~100の間ならPASS,そうでなければNGと表示できます。
わかっていれば、繰り返し使うものではなく、一回だけの処理ならばこのような使い方をしてもいいかもしれませんね。

コメント

タイトルとURLをコピーしました