『Excel VBA 表計算とプログラミング学習サイト』では、アフィリエイトプログラムを利用して商品を紹介しています。

【Excel】比較演算子の使い方

算術演算子を使いこなすことはできても、
比較演算子 についてはちょっと自信がないな」
という人もおられると思います。比較演算子とは要するに数学で使用する等号 (=) や不等号 (<, >) に相当するものです。
 
比較演算子の意味を理解することは難しくありません。しかし、比較演算子それ自体を単独で使うことはまずなくて、ほとんどの場合に IF や OR, AND などの論理関数とセットで用いられます。だから比較演算子の使い方は算術演算子に比べると少しだけ敷居が高くなっています。でも、この比較演算子という代物を自在に使いこなすことができれば、VBA というプログラミング言語を使用せずに、ワークシートだけでもかなり高度なシステムを構築することが可能です。Excel は基本的に「習うより慣れろ」という学習スタイルで良いと思いますけど、比較演算子についてはその構造を体系的に学んでおいたほうが応用力を身につけることができると思います。こばとの記事を読みながら(ここ大事!)、少しずつ慣れていって、比較演算子の達人(?)を目指しましょう。

【Excel】比較演算子の種類

Excel比較演算子には次のような種類があります。

比較演算子 意味
= 等しい
<> 等しくない
> 大きい
< 小さい
>= 以上
<= 以下

ちょっと見慣れない記号が「<>」ですね。初めてみると
「小さくて大きい? どういうこと!?」
なんて戸惑ってしまうかもしれませんね。これは数学の「≠」(ノットイコール)に相当するものです。エクセルには(というよりほとんど全てのプログラミング言語で)「≠」という記号が存在しないので、「<>」で代用しているのです。「互いに小さくもあり大きくもあり」という数字は存在しないので、つまりは「等しくない」ということです。

それでは比較演算子の使い方を練習してみましょう。そのためには先ほどもお話したように IF関数の使い方を覚えなくてはいけません。IF関数は

=IF(論理式[,真の場合][,偽の場合])

のように記述します。 [論理式] のところに比較演算子を使った数式を入れて、「その式が正しいときに表示するもの」を [真の場合] に、「その式が正しくないときに表示するもの」を [偽の場合] 指定しておきます。たとえば

=IF(3<5,"成立","不成立")

と入力した場合「3<5」は正しい式なので「成立」という文字列が返ります。しかし不等号の向きを変えて

=IF(3>5,"成立","不成立")

とすると、これは明らかに間違った式ですから「不成立」と返してくるのです。
 
比較演算子を理解するうえで重要なことを1つだけ補足しておきます。IF関数の1つめの引数である [論理式] を関数内部で処理するさいに「論理値」に変換しています。「論理値」とはつまり TRUE(真) であるか FALSE(偽) であるかということです。「論理値」は比較演算子を単独で扱ったときに(つまり論理式を入力したときに)現れます。

=3<5

と入力すると「この式は正しい」という意味で TRUE(真) を返してきます。数学的にはとても奇異に思える記述ですけど、エクセルでは

=3=3

という式も意味を持ちます。これはセルに論理式「 3 = 3 」を入力しているのです。これは当然成り立っていますから、やはり TRUE(真) を返してきます。IF関数では論理式を内部に組み込んでいるので、こういう論理値をもとに真偽を判断して数値や文字列を返します。だから IF関数自体は(特にそうするように指定しなければ)論理値を返しません。論理式は論理値を返しますが、論理関数は必ずしも論理値を返すわけではないのです。なんだかややこしく思えますけど、使っているうちにわかってきます。

コメント