Excel(エクセル)XOR関数の使い方|揃うとFALSE、不揃いでTRUE
XOR関数について、その使い方をできるだけ分かりやすく解説しています。
使用関数:XOR
XOR(エクスクルーシブオアまたはエックス・オア)関数とは?
XORはXがExclusive(排他的)の略語で、ORは「論理和」を意味します。XORのExcelの解説には「排他的論理和を返す」とあり、条件を加算するOR関数の変形版と言えます。
XOR関数は奇数の条件が満たされているかどうかを判定します。
条件は比較演算子(等号=、不等号< >)を使って指定し、返されるのは論理値「TRUE(肯定・条件は満たされている)」または「FALSE(否定・条件は満たされていない)」です。
論理式が2つあった場合、どちらか一方が合致すればTRUE、両方とも一致か両方とも不一致だとFALSEを返します。3つ以上の場合は奇数が一致したらTRUEを返し、偶数だとFALSEになります。
IF関数と組み合わせれば、判定結果を文字列で自由にカスタマイズすることができます。
XOR関数の論理式に使う「以上・以下・未満」などを示す等号=・不等号< >の表記一覧
- = イコール。等しい。一致する
【表記例】B2=350 - <> 異なる。一致しない
【表記例】B2<>350 - > 大きい。一致を含まない
【表記例】 B2>350 - < 小さい。未満。一致を含まない
【表記例】 B2<350 - >= 以上。一致を含む
【表記例】 B2>=350 - <= 以下。一致を含む
【表記例】 B2<=350
日付を比較演算子(等号=、不等号< >)で指定する例
- > 古い日付。一致を含まない
【表記例】 B2>”2022/5/1″ - < 新しい日付。未満。一致を含まない
【表記例】 B2<“2022/5/1” - >= 古い日付。一致を含む
【表記例】 B2>=”2022/5/1″ - <= 新しい日付。一致を含む
【表記例】 B2<=”2022/5/1″
文字列を比較演算子(等号=、不等号< >)で指定する例
- = イコール。等しい。一致する
【表記例】B2=”合格” - <> 異なる。一致しない
【表記例】B2<>”合格”
XOR関数の仲間AND・OR・NOT関数について
論理関数のAND・OR・NOT・XORは真(TRUE)偽(FALSE)で演算する論理演算からのグループです。
- AND関数は指定した全ての条件に合致した場合だけTRUE、それ以外はFALSE
AND関数の使い方|複数の条件がすべて成立するか判定AND関数の使い方を初心者にも分かりやすく解説。AND関数で3つ以上の条件を指定する方法、IF関数と組み合わせる方法、AND関数とOR関数の違い、AND関数とOR関数を併用する方法、条件付き書式でCOUNTIFとAND関数を組み合わせる方法...
- OR関数は指定した条件のどれか一つに合致した場合TRUE、どの条件とも合致しない場合のみFALSE
OR関数の使い方|IF関数・AND関数との組み合わせで多様化するOR関数の使い方を初心者にも分かりやすく解説。OR関数で3つ以上の条件を指定する方法、IF関数と組み合わせる方法、OR関数とAND関数の違い、OR関数とAND関数を併用する方法、条件付き書式でCOUNTIFとOR関数を組み合わせる方法など
- NOT関数は結果を反転。TRUEはFALSE、FALSEはTRUE。
NOT関数の使い方|OR関数・AND関数を逆転させるNOT関数の使い方を初心者にも分かりやすく解説。NOT関数で数値・空白・論理値などを指定した結果、NOT関数で複数条件を指定する方法、OR関数やAND関数と組み合わせる方法、論理値以外の結果を表示させるためにIF関数や条件付き書式を使う方法...
簡単に図で示すと以下のようになります。
XOR関数の引数と書式
「数式」タブ「関数ライブラリ」→「論理」→ XORをクリックします。
XOR関数の引数は「論理式1」が必須で、「論理式2」以降は任意です。~「論理式254」までの指定が可能です。
XOR関数の書式の構成はこうなります。
XOR関数の基本的な使い方
では、実際にXOR関数を使ってみましょう。
1次試験と2次試験の点数表があり、既に両方とも350点以上は合格、両方とも350点以下は不合格が決まっています。どちらか一方が350点以上であった場合のみ再試験が受けられます。この再試験資格をXOR関数で割り出してみましょう。
第一引数「論理式1」の指定
「再試験資格」の最初のセルを選択してXOR関数の引数ダイアログボックスを開き、「論理式1」を以上・以下・未満などの等号(=)・不等号(< >)を使って指定します。
この例では、1時試験の最初のセルをクリックで入力し、続けて「>=350」と入力します。「B2>=350」は「B2セルにある1次試験の点数が350点以上なら」という論理式です。
第二引数「論理式2」の指定
「論理式2」には2次試験の点数が入ったC2セルをクリックし、続けて「>=350」と入力します。「C2>=350」は「C2セルにある2次試験の点数が350点以上なら」という論理式です。
「再試験資格」の列範囲をオートフィルコピーで埋めます。1次と2次試験のどちらか一方だけが350点以上である行にだけTRUEが返っています。
IF関数にXOR関数をネストして判定を特定の文字列で表示
前章ではXOR関数を使って判定結果を取得しましたが、TRUEとFALSEの結果表示では分かりやすいデータとは言えません。多くの場合、IF関数にネストして、一目で判定結果が見て取れるようにします。
IF関数の引数「論理式」に前章で組み立てたXOR関数「XOR(B2>=350,C2>=350)」をネストし、「真の場合」「偽の場合」にそれぞれ好きな文字列を指定します。文字列は「“”」で括る必要がありますが、ダイアログでは引数の入力後にTabキーを押して確定させると「””」は自動で入ります。
ここでは「真の場合」は文字列で「再試験」、「偽の場合」は空白になるよう指定しました。
データの最後までオートフィルコピーすれば、XOR関数の判定結果がIF関数に指定した文字列で表示されます。
最終的な数式 =IF(XOR(B2>=350,C2>=350),“再試験”,“”)
IF関数の使い方は以下の記事に詳細にまとめてあります
- XOR関数は、論理式が2つあった場合、どちらか一方が合致すればTRUE、両方とも一致か両方とも不一致だとFALSEを返します
- 3つ以上の場合は奇数が一致したらTRUEを返し、偶数だとFALSEになります
- 多くの場合、XOR関数はIF関数にネストして判定結果を文字列で表示させます
- AND関数、OR関数、NOT関数、XOR関数は論理演算のグループです