2023年12月25日【ID:0】
メンバー限定
【Excel】TRUEとFALSEを理解する
IF関数などを使う時に、TRUEやFALSEという言葉が出てきます。
TRUEは「正しい[真]」という意味で、FALSEは「正しくない[偽]」という意味になります。
IF関数の場合は、以下のように、論理式がTRUEかFALSEかによって返す値が異なります。
=IF(論理式,[値がTRUE(真)の場合],[値がFALSE(偽)の場合])
// 論理式が正しい場合は、TRUEの場合を返す、正しくない場合は、FALSEの場合を返す
このTRUEとFALSEの実態を理解することで、数式を作成する際に役立ちます。
まずは、TRUEとFALSEの実態について確認していきます。
TRUEやFALSEという値をINT関数を用いて、数値として確認します。
=INT(数値)
// 数値を切り捨てて整数にした値を返す
INT関数の引数には、通常は"数値"でないとエラーになります。

しかし、TRUEとFALSEは、数値として認識されます。

このように、TRUEは「1」、FALSEは「0」として返されました。
このことを踏まえると、IF関数の論理式に数値を指定しても動作することが考えられます。
実際に、IF関数の論理式に数値を指定した時に返される値を確認します。

実際に確認すると、論理式に数値を割り当てた場合は問題なく動作し、「0」の時のみFALSEになることが確認できました。
通常の論理式に関しても、INT関数で囲って、返ってくる値を確認してみます。

論理式に関しても、比較結果がTRUEかFALSEで返ってくるため、実態としては、「0」と「1」になります。
このことを踏まえると、以下のようにAND関数やOR関数を使わなくても、同じ意味の数式を作ることができます。
=AND(論理式1, [論理式2], [論理式3], … )
// 引数の論理式が全てTUREの時にTUREを返す
=OR(論理式1, [論理式2], [論理式3], … )
// 引数の論理式のいずれかがTUREの時にTUREを返す
=IF(AND(B3>=60,C3>=60,D3>=60),"合格","不合格")
=IF((B5>=60)*(C5>=60)*(D5>=60),"合格","不合格")

=IF(OR(B3>=60,C3>=60,D3>=60),"合格","不合格")
=IF((B5>=60)+(C5>=60)+(D5>=60),"合格","不合格")

AND関数とOR関数を複数使う場合に関しては、特にオレンジ色のような数式にした方が見やすくなるかと思います。
また、こちらでは細かな解説は省略しますが、FILTER関数で複数条件を指定する場合は、AND関数とOR関数が使えないため、オレンジ色のような数式で指定する必要があります。
さらに、数式によっては、IF関数を使わずに表現することもできます。
例えば、以下の数式(残業時間を求める数式)を、IF関数を使わずに表現してみます。
=IF(C5>$C$2,C5-$C$2,0)

続きはIT予備メンバー限定です。
メンバー限定コンテンツになります。

IT予備メンバーページと連携することで内容を確認することができます。
メンバーとは
すでにメンバーの方は、
ログインして連携してから、こちらを更新すると閲覧できます。
※連携しても確認ができない場合は、少し時間を置いてご確認ください。
ログイン(新しいタブ)
※[ログイン]→[設定]→[IT予備-連携]で連携できます