<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>XOR関数 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/xor%e9%96%a2%e6%95%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Mon, 18 May 2026 14:04:07 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>XOR関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのXOR関数の使い方｜排他的論理和と実務パターン5選</title>
		<link>https://mashukabu.com/spreadsheet-xor-function/</link>
					<comments>https://mashukabu.com/spreadsheet-xor-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:28:48 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[AND関数]]></category>
		<category><![CDATA[IF関数]]></category>
		<category><![CDATA[OR関数]]></category>
		<category><![CDATA[XOR関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[論理関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4723</guid>

					<description><![CDATA[GoogleスプレッドシートのXOR関数（排他的論理和）の使い方を解説。AND・ORとの違いを真偽値表で比較し、IF+XORによるシフト管理・承認フローなど実務パターン5つも紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「割引と会員特典を同時に使われていないか確認したい」「午前・午後シフトのどちらか一方だけ入力されているかチェックしたい」。こんな場面で役立つのがXOR関数です。</p>



<p class="wp-block-paragraph"><strong>XOR関数は「片方だけ条件を満たしているか」を1つの数式で判定できます。</strong> AND関数やOR関数では対応できない「排他チェック」を簡潔に書けるのが特徴です。</p>



<p class="wp-block-paragraph">この記事では、XOR関数の構文と基本的な使い方から、IF関数と組み合わせた実務パターン5つまでを解説します。AND・OR・NOTとの違い、エラーの対処法もまとめています。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのXOR関数とは？</a><ol><li><a href="#toc2" tabindex="0">AND・OR・XOR・NOTの違いを真偽値表で比較</a></li></ol></li><li><a href="#toc3" tabindex="0">スプレッドシートのXOR関数の書き方（構文と引数）</a><ol><li><a href="#toc4" tabindex="0">基本構文</a></li><li><a href="#toc5" tabindex="0">引数の説明</a></li><li><a href="#toc6" tabindex="0">TRUE/FALSEの判定ルール</a></li></ol></li><li><a href="#toc7" tabindex="0">XOR関数の基本的な使い方</a><ol><li><a href="#toc8" tabindex="0">2つの条件でどちらか一方だけ判定する</a></li><li><a href="#toc9" tabindex="0">3つ以上の引数を渡したときの動作（奇数個TRUEルール）</a></li></ol></li><li><a href="#toc10" tabindex="0">IF関数×XOR関数の実務パターン5選</a><ol><li><a href="#toc11" tabindex="0">パターン1: シフト入力の排他チェック</a></li><li><a href="#toc12" tabindex="0">パターン2: 連絡方法の二択チェック</a></li><li><a href="#toc13" tabindex="0">パターン3: 承認・否認フラグの整合性チェック</a></li><li><a href="#toc14" tabindex="0">パターン4: 割引の重複適用チェック</a></li><li><a href="#toc15" tabindex="0">パターン5: 3列以上で「どれか1つだけ」を判定する</a></li></ol></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">3つ以上の引数は注意が必要</a></li></ol></li><li><a href="#toc18" tabindex="0">AND・OR・XOR・NOTの使い分け</a></li><li><a href="#toc19" tabindex="0">よくある質問</a><ol><li><a href="#toc20" tabindex="0">XOR関数はExcelでも使えますか？</a></li><li><a href="#toc21" tabindex="0">3つ以上の条件で「どれか1つだけTRUE」を判定する方法はありますか？</a></li><li><a href="#toc22" tabindex="0">XOR関数の引数にセル範囲（例: A1:A5）を指定できますか？</a></li><li><a href="#toc23" tabindex="0">NOT(AND())やNOT(OR())とXOR関数は何が違いますか？</a></li></ol></li><li><a href="#toc24" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのXOR関数とは？</span></h2>



<p class="wp-block-paragraph">XOR関数（読み方: エックスオア関数）は、<strong>TRUEの個数が奇数個かどうかを判定する関数</strong>です。「XOR」は「eXclusive OR」の略で、日本語では「排他的論理和」と呼ばれます。</p>



<p class="wp-block-paragraph">2つの条件で使う場合は「どちらか一方だけTRUE」のときにTRUEを返します。両方TRUEや両方FALSEではFALSEになります。</p>



<p class="wp-block-paragraph">XOR関数でできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>2つの条件のうち片方だけ満たしているか判定する</li><li>IF関数と組み合わせて排他チェックの条件分岐を作る</li><li>最大255個の条件を同時にチェックする</li></ul>



<p class="wp-block-paragraph">XOR関数単体はTRUE / FALSEを返すだけです。実務ではIF関数と組み合わせて使うことがほとんどですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>XOR関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc2">AND・OR・XOR・NOTの違いを真偽値表で比較</span></h3>



<p class="wp-block-paragraph">XOR関数を理解するには、AND・ORとの違いを並べて見るのが一番です。</p>



<figure class="wp-block-table"><table><thead><tr><th>論理式1</th><th>論理式2</th><th>AND</th><th>OR</th><th>XOR</th><th>NOT(論理式1)</th></tr></thead><tbody><tr><td>TRUE</td><td>TRUE</td><td>TRUE</td><td>TRUE</td><td><strong>FALSE</strong></td><td>FALSE</td></tr><tr><td>TRUE</td><td>FALSE</td><td>FALSE</td><td>TRUE</td><td><strong>TRUE</strong></td><td>FALSE</td></tr><tr><td>FALSE</td><td>TRUE</td><td>FALSE</td><td>TRUE</td><td><strong>TRUE</strong></td><td>TRUE</td></tr><tr><td>FALSE</td><td>FALSE</td><td>FALSE</td><td>FALSE</td><td><strong>FALSE</strong></td><td>TRUE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">XOR関数だけ結果のパターンが独特です。AND関数は「両方TRUE」のとき、OR関数は「どちらかTRUE」のときに結果がTRUEになります。XOR関数は「<strong>片方だけTRUE</strong>」のときだけTRUEです。</p>



<p class="wp-block-paragraph">「両方同じ → FALSE、片方だけ → TRUE」と覚えておけば大丈夫ですよ。</p>



<h2 class="wp-block-heading"><span id="toc3">スプレッドシートのXOR関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc4">基本構文</span></h3>



<pre class="wp-block-code"><code>=XOR(論理式1, [論理式2], ...)</code></pre>



<p class="wp-block-paragraph">カッコの中に、判定したい条件を1つ以上指定します。条件はカンマで区切って追加できます。</p>



<h3 class="wp-block-heading"><span id="toc5">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>論理式1</td><td>必須</td><td>判定したい条件（例: A2<>&#8220;&#8221;）</td></tr><tr><td>論理式2以降</td><td>任意</td><td>追加の条件。最大255個まで指定できる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけでも動きますが、2つ以上の条件で排他判定をしてこそ真価を発揮します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>論理式にはセル参照と比較演算子を組み合わせます。テキストを比較するときはダブルクォーテーションで囲んでください。例: <code>A1="完了"</code></p></blockquote>



<h3 class="wp-block-heading"><span id="toc6">TRUE/FALSEの判定ルール</span></h3>



<p class="wp-block-paragraph">XOR関数の判定は「TRUEの個数が奇数かどうか」で決まります。</p>



<ul class="wp-block-list"><li>TRUEが<strong>奇数個</strong> → 結果は<strong>TRUE</strong></li><li>TRUEが<strong>偶数個（0個を含む）</strong> → 結果は<strong>FALSE</strong></li></ul>



<p class="wp-block-paragraph">引数が2つの場合は「片方だけTRUE → TRUE」です。数値を引数に渡した場合は、0がFALSE、0以外がTRUEとして扱われます。</p>



<h2 class="wp-block-heading"><span id="toc7">XOR関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc8">2つの条件でどちらか一方だけ判定する</span></h3>



<p class="wp-block-paragraph">B列に「割引コード」、C列に「会員特典」の適用フラグが入っているとします。どちらか一方だけ適用されているかを判定してみましょう。</p>



<pre class="wp-block-code"><code>=XOR(B2&lt;&gt;&quot;&quot;, C2&lt;&gt;&quot;&quot;)</code></pre>



<ul class="wp-block-list"><li><code>B2<>""</code>: 割引コードが入力されているか</li><li><code>C2<>""</code>: 会員特典が入力されているか</li></ul>



<p class="wp-block-paragraph">B2だけに値があれば結果はTRUEです。両方に値がある場合はFALSEになります。両方空欄の場合もFALSEです。</p>



<h3 class="wp-block-heading"><span id="toc9">3つ以上の引数を渡したときの動作（奇数個TRUEルール）</span></h3>



<p class="wp-block-paragraph">XOR関数に3つ以上の引数を渡すと、動作が少し変わります。「片方だけ」ではなく「TRUEが奇数個」かどうかで判定します。</p>



<pre class="wp-block-code"><code>=XOR(TRUE, TRUE, TRUE)   → TRUE（TRUEが3個 = 奇数）
=XOR(TRUE, TRUE, FALSE)  → FALSE（TRUEが2個 = 偶数）
=XOR(TRUE, FALSE, FALSE) → TRUE（TRUEが1個 = 奇数）
=XOR(FALSE, FALSE, FALSE)→ FALSE（TRUEが0個 = 偶数）</code></pre>



<p class="wp-block-paragraph">3つ以上の引数ではこのルールが適用されます。「どれか1つだけTRUE」を判定したい場合はXOR関数だけでは実現できません。COUNTIF関数などで工夫が必要です（後述）。</p>



<p class="wp-block-paragraph">実務で使う場面の多くは引数2つのパターンです。「片方だけ」の判定は2つの条件で使うのが基本ですよ。</p>



<h2 class="wp-block-heading"><span id="toc10">IF関数×XOR関数の実務パターン5選</span></h2>



<p class="wp-block-paragraph">XOR関数の実務での本領発揮は、<a href="https://mashukabu.com/spreadsheet-if-function/">IF関数</a>との組み合わせです。XOR単体のTRUE/FALSEではなく、条件に応じた文字列や数値を返せるようになります。</p>



<p class="wp-block-paragraph">基本形はこちらです。</p>



<pre class="wp-block-code"><code>=IF(XOR(条件1, 条件2), TRUE値, FALSE値)</code></pre>



<p class="wp-block-paragraph">どちらか一方だけ条件を満たしたら「TRUE値」を返します。両方満たす場合と両方満たさない場合は「FALSE値」です。</p>



<h3 class="wp-block-heading"><span id="toc11">パターン1: シフト入力の排他チェック</span></h3>



<p class="wp-block-paragraph">「午前シフト」と「午後シフト」のどちらか一方だけ入力されているか確認する例です。B列に午前、C列に午後のシフトが入っています。</p>



<pre class="wp-block-code"><code>=IF(XOR(B2&lt;&gt;&quot;&quot;, C2&lt;&gt;&quot;&quot;), &quot;OK&quot;, &quot;要確認&quot;)</code></pre>



<p class="wp-block-paragraph">午前だけ、または午後だけ入力されていれば「OK」です。両方入力されている場合や両方空欄の場合は「要確認」になります。ダブルブッキングの防止に役立ちますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">パターン2: 連絡方法の二択チェック</span></h3>



<p class="wp-block-paragraph">「メール希望」と「電話希望」のうち、片方だけ◯になっているかチェックする例です。</p>



<pre class="wp-block-code"><code>=IF(XOR(D2=&quot;◯&quot;, E2=&quot;◯&quot;), &quot;OK&quot;, &quot;連絡方法を1つ選択してください&quot;)</code></pre>



<p class="wp-block-paragraph">「メール希望」か「電話希望」のどちらか一方だけ◯になっていれば「OK」です。フォームの入力チェックに組み込んでおくと、確認の手間が減りますよ。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン3: 承認・否認フラグの整合性チェック</span></h3>



<p class="wp-block-paragraph">「承認」と「否認」のフラグが両方立っていないか、または両方空欄になっていないかを確認します。</p>



<pre class="wp-block-code"><code>=IF(XOR(F2=&quot;承認&quot;, F2=&quot;否認&quot;), &quot;正常&quot;, &quot;フラグ確認&quot;)</code></pre>



<p class="wp-block-paragraph">実際には1セルを使う例が多いので、2セルで管理するパターンで書くとより実用的です。</p>



<pre class="wp-block-code"><code>=IF(XOR(G2=&quot;承認&quot;, H2=&quot;否認&quot;), &quot;排他OK&quot;, &quot;確認が必要です&quot;)</code></pre>



<p class="wp-block-paragraph">承認か否認のどちらか一方にフラグが立っていれば正常です。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン4: 割引の重複適用チェック</span></h3>



<p class="wp-block-paragraph">「早割」と「クーポン割引」を同時に使えない設定の場合、どちらか一方だけ適用されているか確認します。</p>



<pre class="wp-block-code"><code>=IF(XOR(I2&gt;0, J2&gt;0), &quot;割引適用OK&quot;, IF(AND(I2=0,J2=0), &quot;割引未適用&quot;, &quot;重複エラー&quot;))</code></pre>



<p class="wp-block-paragraph">両方0なら「割引未適用」、どちらか一方だけ入力なら「割引適用OK」、両方入力なら「重複エラー」を表示します。</p>



<h3 class="wp-block-heading"><span id="toc15">パターン5: 3列以上で「どれか1つだけ」を判定する</span></h3>



<p class="wp-block-paragraph">3つ以上の選択肢で「どれか1つだけ選択されているか」を判定したい場合は、XOR関数ではなくCOUNTIF関数を使います。</p>



<pre class="wp-block-code"><code>=IF(COUNTIF(K2:M2, &quot;◯&quot;)=1, &quot;OK&quot;, &quot;選択肢は1つにしてください&quot;)</code></pre>



<p class="wp-block-paragraph">K2:M2 の範囲で◯が1つだけなら「OK」を返します。XOR関数の3引数以上では「奇数個TRUE」ルールになってしまうため、「1つだけ」の判定はCOUNTIF関数が確実です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>条件分岐を3段階以上に分けたい場合は、<a href="https://mashukabu.com/spreadsheet-ifs-function/">IFS関数</a>も検討してみてください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc16">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">XOR関数で「結果がおかしい」「エラーが出る」というときの原因と対処法をまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー・症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE!</td><td>引数に文字列を直接指定した（例: <code>=XOR("はい", "いいえ")</code>）</td><td>比較演算子を使う（例: <code>=XOR(A1="はい", B1="いいえ")</code>）</td></tr><tr><td>予想と逆の結果（3引数）</td><td>「片方だけ」ではなく「奇数個TRUE」ルールで動作している</td><td>引数が2つになるよう条件を整理する</td></tr><tr><td>参照先のエラーが伝播</td><td>参照セルに#N/Aなどのエラーがある</td><td>IFERROR関数でエラーを事前に処理する</td></tr><tr><td>#ERROR!</td><td>括弧の閉じ忘れ・カンマの過不足</td><td>数式バーで括弧の対応を確認する</td></tr><tr><td>数値が0のときFALSE</td><td>0はFALSEとして扱われる仕様</td><td>0を有効値にしたい場合は <code>A1>=0</code> のように比較式にする</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc17">3つ以上の引数は注意が必要</span></h3>



<p class="wp-block-paragraph">XOR関数を3つ以上の引数で使うと、直感と異なる結果になることがあります。</p>



<pre class="wp-block-code"><code>=XOR(TRUE, TRUE, TRUE)  → TRUE（3個=奇数なのでTRUE）</code></pre>



<p class="wp-block-paragraph">3つすべてTRUEなのにTRUEが返ります。「片方だけ」を期待していると混乱しますよね。排他チェックには引数を2つに限定するのがおすすめです。</p>



<h2 class="wp-block-heading"><span id="toc18">AND・OR・XOR・NOTの使い分け</span></h2>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>判定ルール</th><th>使いどころ</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-and-function/">AND</a></td><td>すべてTRUE → TRUE</td><td>「かつ」の条件判定</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-or-function/">OR</a></td><td>1つ以上TRUE → TRUE</td><td>「または」の条件判定</td></tr><tr><td>XOR</td><td>TRUEが奇数個 → TRUE</td><td>「どちらか一方だけ」の判定</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-not-function/">NOT</a></td><td>TRUE⇔FALSEを反転</td><td>条件の否定</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">迷ったときは次の基準で選んでみてください。</p>



<ul class="wp-block-list"><li><strong>すべての条件を満たす必要がある</strong> → AND関数</li><li><strong>どれか1つ満たせばOK</strong> → OR関数</li><li><strong>片方だけ満たしているかチェックしたい</strong> → XOR関数</li><li><strong>条件をひっくり返したい</strong> → NOT関数</li></ul>



<p class="wp-block-paragraph">実務で使用頻度が高いのはAND関数とOR関数です。XOR関数は排他チェックという限定的な場面で力を発揮します。</p>



<h2 class="wp-block-heading"><span id="toc19">よくある質問</span></h2>



<h3 class="wp-block-heading"><span id="toc20">XOR関数はExcelでも使えますか？</span></h3>



<p class="wp-block-paragraph">はい、ExcelにもXOR関数があり、Googleスプレッドシートと完全に同じ書式・動作です。Excel 2013以降で利用できます。スプレッドシートとExcel間でファイルを共有しても計算結果は変わりません。</p>



<h3 class="wp-block-heading"><span id="toc21">3つ以上の条件で「どれか1つだけTRUE」を判定する方法はありますか？</span></h3>



<p class="wp-block-paragraph">XOR関数の3引数以上では「TRUEが奇数個」というルールになるため、「どれか1つだけ」の判定はできません。<code>=COUNTIF(範囲, TRUE)=1</code> を使う方法が確実です。たとえば <code>=IF(COUNTIF(B2:D2,TRUE)=1,"OK","NG")</code> のように書くと3列のうち1列だけTRUEかどうかをチェックできます。</p>



<h3 class="wp-block-heading"><span id="toc22">XOR関数の引数にセル範囲（例: A1:A5）を指定できますか？</span></h3>



<p class="wp-block-paragraph">指定できます。<code>=XOR(A1:A5)</code> のように範囲を渡すと、その範囲内のTRUEの個数が奇数かどうかを判定します。ただし範囲指定では「どのセルがTRUEか」を特定できないため、実務では個別のセル参照か比較式を引数にする使い方が一般的です。</p>



<h3 class="wp-block-heading"><span id="toc23">NOT(AND())やNOT(OR())とXOR関数は何が違いますか？</span></h3>



<p class="wp-block-paragraph"><code>NOT(AND(A,B))</code> は「AとBが両方TRUEでない」、<code>NOT(OR(A,B))</code> は「AもBもTRUEでない」を返します。XOR関数は「AとBのうち片方だけTRUE」を返す点が異なります。「両方FALSEのとき」の動作を比較すると、<code>NOT(OR(A,B))</code> ならTRUEですが、XOR関数はFALSEになります。「どちらか一方だけ」という排他条件にはXOR関数がもっとも直感的です。</p>



<h2 class="wp-block-heading"><span id="toc24">まとめ</span></h2>



<p class="wp-block-paragraph">XOR関数は、条件のうちどちらか一方だけが当てはまるかを判定する論理関数です。</p>



<ul class="wp-block-list"><li>2つの条件では「片方だけTRUE → TRUE」</li><li>3つ以上の条件では「TRUEが奇数個 → TRUE」</li><li>IF関数と組み合わせて排他チェックの条件分岐を作るのが定番</li><li>3列以上で「1つだけ選択」を判定したい場合はCOUNTIF関数が確実</li></ul>



<p class="wp-block-paragraph">まずはIF関数×XOR関数の組み合わせから試してみてください。シフトの排他チェックや入力フォームのバリデーションなど、実務で活躍する場面がありますよ。</p>



<p class="wp-block-paragraph">複数条件でデータを数えたい場合は、<a href="https://mashukabu.com/spreadsheet-countifs-function/">COUNTIFS関数</a>も合わせてチェックしてみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-xor-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのXOR関数の使い方｜排他的論理和で条件判定する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-xor/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-xor/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 18 Jan 2023 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[XOR関数]]></category>
		<category><![CDATA[排他的論理和]]></category>
		<category><![CDATA[条件判定]]></category>
		<category><![CDATA[論理関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3285</guid>

					<description><![CDATA[ExcelのXOR関数（排他的論理和）の使い方を基礎からわかりやすく解説。「どちらか一方だけTRUE」を判定する仕組み、IF関数との組み合わせ、3つ以上の条件での注意点、AND・OR関数との違いと使い分けまで実務に直結する具体例つきで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「2つの条件のうち、どちらか一方だけが当てはまるかを判定したい」と思ったことはありませんか？</p>



<p class="wp-block-paragraph">AND関数やOR関数では「両方TRUE」「どちらかTRUE」の判定はできますが、<strong>「片方だけTRUE」</strong> を判定するのはちょっと面倒ですよね。</p>



<p class="wp-block-paragraph">そんなときに使えるのが <strong>XOR関数</strong> です。この記事では、XOR関数の基本的な使い方から、IF関数との組み合わせ、AND・OR関数との違いまでわかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">XOR関数とは？</a></li><li><a href="#toc2" tabindex="0">XOR関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">数式に直接条件を書く方法</a></li><li><a href="#toc7" tabindex="0">セル参照を使う方法</a></li></ol></li><li><a href="#toc8" tabindex="0">実践的な使い方・応用例</a><ol><li><a href="#toc9" tabindex="0">IF関数と組み合わせて結果を表示する</a></li><li><a href="#toc10" tabindex="0">3つ以上の条件を判定する</a></li></ol></li><li><a href="#toc11" tabindex="0">エラー対処とAND・OR関数との違い</a><ol><li><a href="#toc12" tabindex="0">#VALUE! エラーの原因と対処</a></li><li><a href="#toc13" tabindex="0">AND・OR関数との違い</a></li></ol></li><li><a href="#toc14" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">XOR関数とは？</span></h2>



<p class="wp-block-paragraph">XOR関数は、指定した論理値の <strong>排他的論理和（Exclusive OR）</strong> を返す関数です。</p>



<p class="wp-block-paragraph">読み方は「エクスクルーシブ オア」で、「エックスオア」と呼ばれることもあります。</p>



<p class="wp-block-paragraph">簡単に言うと、「指定した条件のうち、TRUEが <strong>奇数個</strong> のときにTRUEを返す」という動作をします。</p>



<p class="wp-block-paragraph">条件が2つの場合は、次のようなイメージです。</p>



<figure class="wp-block-table"><table><thead><tr><th style="text-align:center">条件1</th><th style="text-align:center">条件2</th><th style="text-align:center">XOR関数の結果</th></tr></thead><tbody><tr><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td><td style="text-align:center">FALSE</td></tr><tr><td style="text-align:center">TRUE</td><td style="text-align:center">FALSE</td><td style="text-align:center">TRUE</td></tr><tr><td style="text-align:center">FALSE</td><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td></tr><tr><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ポイントは「両方TRUE」のときにFALSEになること。AND関数やOR関数にはないXOR関数ならではの特徴です。</p>



<p class="wp-block-paragraph">XOR関数は <strong>Excel 2013以降</strong> および <strong>Microsoft 365</strong> で使用できます。Excel 2010以前のバージョンでは使用できないので注意してください。</p>



<h2 class="wp-block-heading"><span id="toc2">XOR関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc3">基本構文</span></h3>



<pre class="wp-block-code"><code>=XOR(論理式1, [論理式2], ...)</code></pre>



<p class="wp-block-paragraph"><code>[]</code> で囲まれた引数は省略可能です。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th style="text-align:center">必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>論理式1</td><td style="text-align:center">必須</td><td>判定したい条件や論理値（TRUE/FALSE）</td></tr><tr><td>論理式2〜254</td><td style="text-align:center">省略可</td><td>追加の条件。最大254個まで指定可能</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には、論理値（TRUE/FALSE）のほかに、論理式（<code>A1>10</code> など）やセル参照、配列を指定できます。</p>



<p class="wp-block-paragraph">文字列や空白セルは無視されます。指定した範囲に論理値が1つも含まれない場合は <code>#VALUE!</code> エラーになります。</p>



<h2 class="wp-block-heading"><span id="toc5">基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc6">数式に直接条件を書く方法</span></h3>



<p class="wp-block-paragraph">まずは、XOR関数の中に直接条件式を書く基本的な使い方です。</p>



<pre class="wp-block-code"><code>=XOR(3&gt;12, 4&gt;6)</code></pre>



<p class="wp-block-paragraph">この式では、<code>3>12</code> はFALSE、<code>4>6</code> もFALSEです。TRUEが0個（偶数個）なので、結果は <strong>FALSE</strong> になります。</p>



<p class="wp-block-paragraph">次の式を見てみましょう。</p>



<pre class="wp-block-code"><code>=XOR(10&gt;5, 4&gt;6)</code></pre>



<p class="wp-block-paragraph"><code>10>5</code> はTRUE、<code>4>6</code> はFALSEです。TRUEが1個（奇数個）なので、結果は <strong>TRUE</strong> になります。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照を使う方法</span></h3>



<p class="wp-block-paragraph">実務では、セルに入力された値を参照するケースが一般的です。</p>



<p class="wp-block-paragraph">たとえば、B2セルに営業部の達成フラグ（TRUE/FALSE）、C2セルに企画部の達成フラグが入っているとします。</p>



<pre class="wp-block-code"><code>=XOR(B2, C2)</code></pre>



<p class="wp-block-paragraph">この式は「どちらか一方の部署だけが目標を達成している」場合にTRUEを返します。</p>



<h2 class="wp-block-heading"><span id="toc8">実践的な使い方・応用例</span></h2>



<h3 class="wp-block-heading"><span id="toc9">IF関数と組み合わせて結果を表示する</span></h3>



<p class="wp-block-paragraph">XOR関数はTRUEかFALSEしか返さないので、実務では <a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a> と組み合わせて使うことが多いです。</p>



<p class="wp-block-paragraph">たとえば、午前シフトと午後シフトのどちらか一方だけに出勤しているかを判定する場面を考えてみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A</th><th>B</th><th>C</th></tr></thead><tbody><tr><td>1</td><td>社員名</td><td>午前出勤</td><td>午後出勤</td></tr><tr><td>2</td><td>田中</td><td>TRUE</td><td>FALSE</td></tr><tr><td>3</td><td>佐藤</td><td>TRUE</td><td>TRUE</td></tr><tr><td>4</td><td>鈴木</td><td>FALSE</td><td>FALSE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">D2セルに次の式を入力します。</p>



<pre class="wp-block-code"><code>=IF(XOR(B2, C2), &quot;半日勤務&quot;, &quot;該当なし&quot;)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>社員名</th><th style="text-align:center">午前出勤</th><th style="text-align:center">午後出勤</th><th>判定結果</th></tr></thead><tbody><tr><td>田中</td><td style="text-align:center">TRUE</td><td style="text-align:center">FALSE</td><td>半日勤務</td></tr><tr><td>佐藤</td><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td><td>該当なし</td></tr><tr><td>鈴木</td><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td><td>該当なし</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">田中さんは午前だけ出勤しているので「半日勤務」と表示されます。佐藤さんは両方出勤、鈴木さんは両方欠勤なので「該当なし」です。</p>



<h3 class="wp-block-heading"><span id="toc10">3つ以上の条件を判定する</span></h3>



<p class="wp-block-paragraph">XOR関数は3つ以上の条件を指定することもできます。ただし、動作が少し変わるので注意してください。</p>



<p class="wp-block-paragraph">XOR関数は「TRUEの数が奇数個のときにTRUE」を返します。2つの条件なら直感的ですが、3つ以上になるとやや複雑です。</p>



<pre class="wp-block-code"><code>=XOR(TRUE, TRUE, TRUE)</code></pre>



<p class="wp-block-paragraph">TRUEが3個（奇数個）なので、結果は <strong>TRUE</strong> です。</p>



<pre class="wp-block-code"><code>=XOR(TRUE, TRUE, FALSE)</code></pre>



<p class="wp-block-paragraph">TRUEが2個（偶数個）なので、結果は <strong>FALSE</strong> です。</p>



<p class="wp-block-paragraph">3つ以上の条件で「どれか1つだけTRUE」を判定したい場合は、XOR関数ではなく <a href="https://mashukabu.com/excel-function-howto-use-countif/">COUNTIF関数</a> などで「TRUEの数が1」かどうかを確認する方法がより確実です。</p>



<h2 class="wp-block-heading"><span id="toc11">エラー対処とAND・OR関数との違い</span></h2>



<h3 class="wp-block-heading"><span id="toc12">#VALUE! エラーの原因と対処</span></h3>



<p class="wp-block-paragraph">指定した範囲に論理値（TRUE/FALSE）が1つも含まれない場合に <code>#VALUE!</code> エラーが発生します。</p>



<pre class="wp-block-code"><code>=XOR(&quot;あ&quot;, &quot;い&quot;)</code></pre>



<p class="wp-block-paragraph">文字列だけを指定するとエラーになります。引数に論理値や論理式を指定しているか確認してください。</p>



<p class="wp-block-paragraph">エラーへの対処は <a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a> で囲む方法が便利です。</p>



<pre class="wp-block-code"><code>=IFERROR(XOR(A1, B1), &quot;判定不可&quot;)</code></pre>



<p class="wp-block-paragraph">また、XOR関数はExcel 2013で追加された関数です。それ以前のバージョンでは <code>#NAME?</code> エラーが表示されます。古いバージョンで同じ処理をしたい場合は、次の代替式を使ってください。</p>



<pre class="wp-block-code"><code>=OR(A1, B1) - AND(A1, B1)</code></pre>



<p class="wp-block-paragraph">これは「A1かB1の少なくとも一方がTRUE」かつ「両方TRUEではない」ことを判定するので、XOR関数と同じ結果になります。</p>



<h3 class="wp-block-heading"><span id="toc13">AND・OR関数との違い</span></h3>



<p class="wp-block-paragraph">XOR関数と混同しやすい <a href="https://mashukabu.com/excel-function-howto-use-and/">AND関数</a> ・ <a href="https://mashukabu.com/excel-function-howto-use-or/">OR関数</a> との違いを整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th style="text-align:center">条件1</th><th style="text-align:center">条件2</th><th style="text-align:center">AND関数</th><th style="text-align:center">OR関数</th><th style="text-align:center">XOR関数</th></tr></thead><tbody><tr><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td><td style="text-align:center">FALSE</td></tr><tr><td style="text-align:center">TRUE</td><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td></tr><tr><td style="text-align:center">FALSE</td><td style="text-align:center">TRUE</td><td style="text-align:center">FALSE</td><td style="text-align:center">TRUE</td><td style="text-align:center">TRUE</td></tr><tr><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td><td style="text-align:center">FALSE</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">使い分けの目安は次のとおりです。</p>



<ul class="wp-block-list"><li><strong>AND関数</strong>: すべての条件がTRUEのときにTRUEにしたい</li><li><strong>OR関数</strong>: いずれかの条件がTRUEのときにTRUEにしたい</li><li><strong>XOR関数</strong>: どちらか一方だけがTRUEのときにTRUEにしたい</li></ul>



<p class="wp-block-paragraph">また、ビット単位の排他的論理和を計算したい場合は <a href="https://mashukabu.com/excel-function-howto-use-bitxor/">BITXOR関数</a> を使います。XOR関数は論理値の判定、BITXOR関数は数値のビット演算という違いがあります。</p>



<h2 class="wp-block-heading"><span id="toc14">まとめ</span></h2>



<p class="wp-block-paragraph">XOR関数は「どちらか一方だけがTRUEかどうか」を判定できる論理関数です。</p>



<p class="wp-block-paragraph">この記事のポイントをおさらいしましょう。</p>



<ul class="wp-block-list"><li>XOR関数は <strong>TRUEの数が奇数個のときにTRUE</strong> を返す</li><li>IF関数と組み合わせると「片方だけ該当」の条件分岐ができる</li><li>3つ以上の条件では「奇数個がTRUE」の判定になるので注意</li><li>AND関数（すべてTRUE）・OR関数（いずれかTRUE）との使い分けがポイント</li><li>Excel 2013以降で使用可能。古いバージョンでは代替式を活用</li></ul>



<p class="wp-block-paragraph">XOR関数は使用頻度こそ高くありませんが、「片方だけ」の判定が必要な場面では非常に便利です。AND関数やOR関数と合わせて覚えておくと、条件分岐のバリエーションがぐっと広がりますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-xor/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
