EXCELの豆知識 – *記号のAND と +記号のORの役割とその背景-
Excelでは、論理演算1[^1]を行う際に、数値を用いてTRUEやFALSEを表現します。
特に、配列において`*`記号を用いたAND演算と`+`記号を用いたOR演算について理解することが重要です。
記号の役割と使用方法
数値 | 論理値評価 | 対応する論理演算子の記号 | 備考 |
---|---|---|---|
1 | TRUE | * (AND) | 0以外の数値はすべてTRUEとして評価されるケースがあるようです |
0 | FALSE | + (OR) | 0はFALSEとして評価されます |
数値0はFALSEを意味し、0以外の任意の数値はTRUEを意味します。
また、`*`記号はAND演算子として、`+`記号はOR演算子として機能します。
Excelでは、論理値は以下のように評価されます。
- TRUE: 数値1として扱われますが、実際には0以外の任意の数値もTRUEと評価されます。
- FALSE: 数値0として扱われます。
ブール値の文脈では、「真」は通常「1」を意味し、「偽」は「0」を意味します。
しかし、Excelでは0以外の任意の数値が「真」(TRUE)として扱われることがあります。
したがって、Excelでは数値「2」も「真」と見なされることもあるようです。
なぜ、`*`と`+`なのか?
一見すると、`*`記号と`+`記号は四則演算のため、配列の分野に限った話であると思えます。
しかし、実際にはこれらの記号は0と1に変換されるため、論理演算として理にかなっています。
掛け算 (`*`記号) と足し算 (`+`記号) の数学的特性が、
AND演算とOR演算の論理的な性質に結びついています。
AND演算 (`*`記号)
AND演算は、すべての論理値がTRUEである場合にのみ、結果がTRUEになります。
掛け算の特性を反映するために、`*`記号が使用されます。
AND演算の具体例
- TRUE * TRUE = 1 * 1 = 1
- この結果は1です。1はTRUEです。
- TRUE * FALSE = 1 * 0 = 0
- FALSE * TRUE = 0 * 1 = 0
- どちらのケースでも結果は0です。0はFALSEです。
- FALSE * FALSE = 0 * 0 = 0
- この結果も0です。0はFALSEです。
掛け算では、乗数のいずれかがゼロであれば結果もゼロになる特性が、
AND演算の「すべての論理値がTRUEでなければFALSE」という性質と一致します。
OR演算 (+
記号)
OR演算は、1つ以上の論理値がTRUEである場合に、結果がTRUEになります。
足し算の特性を反映するために、+
記号が使用されます。
OR演算の具体例
- TRUE + TRUE = 1 + 1 = 2
- この結果は数値としては2ですが、結果はTRUEです(0以外の任意の数値もTRUE)。
- TRUE + FALSE = 1 + 0 = 1
- FALSE + TRUE = 0 + 1 = 1
- これらの結果は1です。1はTRUEです。
- FALSE + FALSE = 0 + 0 = 0
- この結果は0です。0はFALSEです。
足し算では、加える数値のうち1つ以上が非ゼロであれば結果も非ゼロになる特性が、
**OR演算の「1つ以上がTRUEであればTRUE」**という性質と一致します。
まとめ
`*`記号と`+`記号は、それぞれAND演算とOR演算に使用される理由は、
数値の評価方法と演算結果が論理的に整合するためです。
Excelでは、数値1がTRUE、数値0がFALSEとして評価されるため、
`*`記号による掛け算と`+`記号による足し算は論理演算において理にかなっています。
- 論理演算とは、特定の条件に基づいてデータを評価・操作する操作です。主な論理演算にはAND、OR、NOTなどがあり、これらは条件付き書式、データのフィルタリング、数式内での条件評価などに使用されます。 ↩︎