Excelで奇数個の条件が満たされているか調べる【XOR関数】

Excelの論理関数の一つに【XOR(エクスクルーシブ・オア)関数】があります。
Excelで論理関数といえば、『AND』『OR』『NOT』の3種類が有名だと思います。しかし、『AND』『OR』『NOT』の論理関数では調べられないものがあります。

それが、『いずれか片方(奇数個)が【TURE(真)】もしくは【FALSE(偽)】の条件が満たされていることを調べる』もの。それを調べることができる論理関数が『XOR(エクスクルーシブ・オア)関数』になります。

では、【XOR関数】はどういう状況で使うのか?また、『AND』『OR』『NOT』の3種類の関数との違いは?詳しくみていきましょう!

Excelのほかの論理関数との違いとは?

XOR関数と論理関数の3種類との違いを見ていきましょう。

例えば小テストが2科目あり、合格点が80点以上だった時に、両方合格しているものを調べる場合は、『AND関数』を。いずれか(片方もしくは両方)の科目が合格しているのものを調べる場合は、『OR関数』を。合格点未満のものを調べる場合は『NOT関数』を…と使い分けができます。

しかし、「片方だけが条件に当てはまるもの」もしくは「片方だけが条件に満たないもの」を調べる場合は、『AND』『OR』『NOT』の論理関数を使うことができません。

この条件の場合どうしたらいいのか?まず、『AND』『OR』『NOT』の論理関数を使ってみていきます。

『AND』『OR』『NOT』の論理関数では調べられないものとは?

先ほどの例の小テストを使って考えてみます。まず、『AND』『OR』『NOT』の論理関数を使っていずれか片方のみ合格点に満たないのものを調べる場合、

『関数式:=IF(OR(C3<80,D3<80),TRUE,FALSE)』

のような条件を作ることはできますが、これだと、両方が合格点未満だった場合も正しいことになってしまうので、「片方だけが合格点・もしくは合格点に満たないもの」を調べられません…。

そこで、使用するのが【XOR関数】になります。では、その使い方を見ていきましょう。

奇数個の条件が満たされているか調べる【XOR関数】の使い方

上でも書きましたが、「片方だけが条件に当てはまるもの・条件に満たないもの」を調べる関数が、【XOR関数】になります。

先ほどの例であれば、2科目のうち合格点のものを調べる場合は、『片方(奇数個)だけが条件当てはまっているのか調べる』関数である【XOR関数】を使うと、「片方だけが合格点・もしくは合格点に満たないもの」を調べることができます。

では、どのようにして関数式を作るのか見ていきましょう!

奇数個の条件が満たされているか調べる【XOR関数】の書き方

【XOR(エクスクルーシブ・オア)関数】の書き方は、

『関数式:=XOR(条件1,条件2,…)』

とあらわします。そして論理式には、条件が満たされるもの、条件が満たされないものを返す式を指定します。

XOR関数は奇数個の条件が満たされる場合のみTRUE(真)になるので、

論理式答え
=XOR(TRUE,TRUE)FALSE
=XOR(TRUE,FALSE)TRUE
=XOR(FALSE,TRUE)TRUE
=XOR(FALSE,FALSE)FALSE

と、条件が2つの場合は『TRUE』『FALSE』の組み合わせによってのみ、『TRUE』が答えに表示されます。

XOR関数を使ってみましょう

では、実際にXOR関数を使って、条件の片方だけが満たされるものを出してみましょう!

今回は、条件①が『数値1が1以上の場合』、条件②が『数値2が5以上の場合』となっており、奇数個の条件を満たしていれば「TRUE」になる式を作ります。
※C2には『A1>=1』が。D2には『B2>=5』が入っています。

関数式を書いてみると、

『=XOR(C2,D2)』

のようになります。これをENTERで確定すると…。

E2は「TRUE」になりました!C2は条件を満たしていませんが、D2の『B2>=5』の条件を満たしているので、2つのうち1つ条件が満たされたので「TRUE」になったわけです!

ここがポイント!

XOR関数は論理式の【TRUE】が奇数個ならば【TRUE】になる!

XOR関数は論理式の【FALSE】が奇数個ならば【TRUE】になる!

Excelで奇数個の条件が満たされているか調べる【XOR関数】|まとめ

Excelの論理関数の一つに【XOR関数】をご紹介してきましたが、いかがだったでしょうか?

【XOR(エクスクルーシブ・オア)関数】は、office2013から使用されてきた関数になります。XOR関数は「排他的論理和」とも言われ、論理式がどちらも「TURE」や「FALSE」の場合は偽になります。「自分と同じ意見の他人を受け入れない。自分と一緒のものがあるのは嫌」といった性格を持っているからです。

そのため、論理関数は調べたい条件によって使い分けていくことが大切です。
どういった条件で、どんな結果を出したいのか、それぞれの関数の違いを見ながら使い分けましょう!