NOT関数の使い方|OR関数・AND関数を逆転させる

Excel(エクセル)NOT関数の使い方

Excel(エクセル)NOT関数の使い方|OR関数・AND関数を逆転させる

NOT関数について、その使い方を初心者にも分かりやすく解説しています。NOT関数とAND関数・OR関数を組み合わせる使い方を中心に図解していきます。

使用関数:NOT、OR、AND、IF

NOT(ノット)関数とは?

論理式に指定した条件が満たされていないことを判定します。論理式の答えがTRUE(肯定・条件は満たされている)である場合はFALSEを返し、論理式の答えがFALSE(否定・条件は満たされていない)である場合はTRUEを返します。

NOT関数で簡単な判定をしてみる

性別の入ったセルを参照して「=NOT(B2=”男”)」という数式を入れてみると、以下のように「女=TRUE」「男=FALSE」が返ります。
NOT関数で性別のセルを判定した結果

NOT関数に数値・空白・論理値を指定する

NOT関数で数値の入ったセルを参照すると、以下のように「0」だけTRUEが返り、他の数値は負数も含め全てFALSEになります。
NOT関数に数値を指定した結果

NOT関数に空白セルを指定するとTRUEになります。論理値の文字列「TRUE」はFALSEになり、「FALSE」はTRUEになります。
NOT関数に空白・論理値を指定した結果

NOT関数の引数と書式

「数式」タブ「関数ライブラリ」→「論理」→ NOTをクリックします。
「関数ライブラリ」→「論理」→ NOT
NOT関数の引数は「論理式」だけです。

NOT関数の書式の構成はこうなります。
NOT関数の書式の構成

NOT関数に複数の条件を指定するには?

NOT関数の引数は「論理式」一つなので、複数の条件を指定するにはAND関数やOR関数の助けを借ります。
順当に使えば、AND関数は「指定したすべての条件を満たす場合」にTRUEを返し、OR関数は「指定した条件のどれか一つに合致した場合」にTRUEを返しますが、NOT関数にネストすると逆転した結果になります。

以下に示した図の通り、NOTにネストしたAND関数は「指定したすべての条件を満たす場合」にFALSEを返し、OR関数は「指定した条件のどれか一つに合致した場合」にFALSEを返します。
NOTにネストしたAND関数とOR関数の結果の違い

NOT関数とAND関数を組み合わせた使い方

「無料講習会」の参加資格を「20代、30代」か、または「非会員」にします。この判定をNOT関数とAND関数の組み合わせで実装します。
NOT関数とAND関数を組み合わせて複数条件を指定する表

まず、AND関数で「40歳以上」かつ「正会員」という条件を指定した数式を組み立てます。
AND関数の引数ダイアログでの指定
この数式「AND(B3>=40,C3=”正会員”)」をNOT関数の引数「論理式」にネストします。
AND関数をNOT関数の引数にネスト

結果をオートフィルコピーすると、「20代、30代」の人全員と、「非会員」の人全員の行にTRUEが返りました。裏返せば、「40歳以上で、尚且つ正会員」の人以外はTRUEということです。
AND関数をNOT関数の引数にネストした結果

AND関数の使い方は以下の記事に詳細にまとめてあります

AND関数の使い方|複数の条件がすべて成立するか判定
AND関数の使い方を初心者にも分かりやすく解説。AND関数で3つ以上の条件を指定する方法、IF関数と組み合わせる方法、AND関数とOR関数の違い、AND関数とOR関数を併用する方法、条件付き書式でCOUNTIFとAND関数を組み合わせる方法...

NOT関数とOR関数を組み合わせた使い方

「無料講習会」の参加資格を、今度は「20代、30代」の「非会員」限定にします。この判定をNOT関数とOR関数の組み合わせで実装します。
前章でNOT関数の引数「論理式」にネストしたAND関数の数式「NOT(AND(B3>=40,C3=”正会員”))」を「NOT(OR(B3>=40,C3=”正会員”))」に修正します。
OR関数をNOT関数の引数にネスト

結果をオートフィルコピーすると、「20代、30代」で、かつ「非会員」の人の行だけにTRUEが返りました。裏返せば、「40歳以上」の人全員と「正会員」の人全員がFALSEということです。
OR関数をNOT関数の引数にネストした結果

OR関数の使い方は以下の記事に詳細にまとめてあります

OR関数の使い方|IF関数・AND関数との組み合わせで多様化する
OR関数の使い方を初心者にも分かりやすく解説。OR関数で3つ以上の条件を指定する方法、IF関数と組み合わせる方法、OR関数とAND関数の違い、OR関数とAND関数を併用する方法、条件付き書式でCOUNTIFとOR関数を組み合わせる方法など

IF関数にNOT関数をネストして判定を特定の文字列で表示

前章ではNOT関数にAND関数とOR関数をネストして判定結果を取得しましたが、TRUEとFALSEの結果表示では分かりやすいデータとは言えません。多くの場合、IF関数にネストして、一目で判定結果が見て取れるようにします。

IF関数の引数「論理式」に前章で組み立てたNOT関数「NOT(AND(B3>=40,C3=”正会員”))」「NOT(OR(B3>=40,C3=”正会員”))」をネストし、「真の場合」「偽の場合」にそれぞれ好きな文字列を指定します。文字列は「“”」で括る必要がありますが、入力後にTabキーを押して確定させれば「””」は自動で入ります。
ここでは「真の場合」は「◯」、「偽の場合」は空白になるよう指定しました。
IF関数にNOT関数をネストしたダイアログの指定

データの最後までオートフィルコピーすれば、NOT関数の判定結果がIF関数に指定した文字列で表示されます。
NOT関数の判定結果がIF関数に指定した文字列で表示された

最終的な数式 =IF(NOT(AND(B3>=40,C3=”正会員”)),”◯”,””) =IF(NOT(OR(B3>=40,C3=”正会員”)),”◯”,””)

IF関数の使い方は以下の記事に詳細にまとめてあります

Excel「IF関数」基本の使い方と条件2つ以上指定する「場合分け」を覚える
IF関数の基本の使い方から2つ以上の条件を指定する応用例までを初心者にも分かりやすく図解します。場合分けで条件を指定する方法の基本、数式の入れ子、IFS関数、AND・OR関数との組み合せなどIF関数のいろいろな使い方を覚えて下さい。

NOT関数を条件付き書式に使う

条件付き書式で数式にNOT関数を指定して、IF関数にネストしたのと同様の結果を得る方法もあります。
前章でNOT関数で取得したTRUEの代わりに、IF関数で「◯」を表示させました。これを条件付き書式でTRUEの行全体に色を着けてみます。

この例では行全体に色を付けたいので、表の1行目全体をドラッグで選択、「ホーム」タブ「スタイル」グループの「条件付き書式」ボタンで開くプルダウンから「新しいルール」をクリックします。
表の1行目を選択して「ホーム」→「スタイル」→「条件付き書式」→新しいルール

ここではNOT関数にOR関数をネストした場合を例にしますが、AND関数でも操作は同じです。

  • 新しいルールのダイアログでルールの種類を一番下の「数式を使用して、書式設定するセルを決定」にします
  • 次の数式を満たす場合に値を書式設定」のテキストボックスにNOT関数の数式をペーストします
  • 数式のセル番地の部分を絶対列参照(列だけ固定)にしておきます → =NOT(OR($B3>=40,$C3=”正会員”))
  • 「書式」ボタンをクリックして適当な書式を指定したら、「OK」を押します

新しいルールのダイアログでNOT関数にOR関数をネストした数式を入力し、書式を設定

条件付き書式が設定された行を下までオートフィルコピーします。この時点で値の単純コピーになりますが、オートフィルオプションボタン(右下に表示されているアイコン)をクリックして、「書式のみコピー(フィル)」を選択します。
条件付き書式が設定された行を下までオートフィルコピーして「書式のみコピー(フィル)」を指定
設定した条件付き書式が適用されて、行に色が付きました。
NOT関数にOR関数をネストした数式で設定した書式が適用された

NOT関数の使い方 まとめ
  • NOT関数は論理式に指定した条件が満たされていないことを判定します
  • NOT関数に数値を指定すると0だけがTRUE、他はFALSEになります
  • NOT関数に空白を指定するとTRUEになります
  • NOT関数に論理値を指定すると、TRUEはFALSEになり、FALSEはTRUEになります
  • NOT関数に複数の条件を指定するには、AND関数やOR関数をネストして実装します
  • ネストされたAND関数やOR関数はNOT関数によって結果を逆転させます
  • NOT関数の結果を論理値以外の文字列にするには、IF関数か条件付き書式を使います
タイトルとURLをコピーしました