ExcelでIfステートメントとNestedIfステートメントを使用する方法

数式でかなり使用するExcel関数の1つは、 IF関数です。IF関数は、論理条件をテストし、論理条件がTRUEまたはFALSEを返すかどうかに応じて2つの異なる結果を生成するために使用されます。

例として、以下の携帯電話の売上高の表を使用してみましょう。サンプルファイルはこちらからダウンロードできます。

単一条件のIF関数(IF Function with Single Condition)

販売が行われた場所に応じて、各販売行の手数料(Commission Fee)を計算する必要があるシナリオを考えてみます(列D(Column D))。米国(USA)で販売された場合、手数料(Commission Fee)は10%です。それ以外の場合、残りの場所の手数料(Commission Fee)は5%になります。

セルF2(Cell F2)に入力する必要がある最初の数式は、次のとおりです。

=IF(D2="USA", E2*10%, E2*5%)

数式の内訳:

  1. =IF(“=”はセル内の数式の始まりを示し、IFは使用しているExcel関数です。
  2. D2=”USA” –実行する論理(Logical)テスト(つまり、列D2のデータがUSAの場合)。
  3.  E2*10% –最初の論理テストの結果が(Result)TRUEの場合(つまり、列D2の値がUSAの場合)、数式によって返される結果。
  4. E2*5% –最初の論理テストの結果が(Result)FALSEの場合(つまり、列D2の値が(D2)USAではない(NOT) 場合)に数式によって返される結果。
  5. –数式の終わりを示す閉じ括弧。(Closing)

次に、数式をセルF2から(Cell F2)列F(Column F)の残りの行にコピーすると、 IF論理テストがそれぞれでTRUEまたはFALSEを返すかどうかに応じて、各行の(FALSE)手数料(Commission Fee)が10%または5%計算されます。行。

複数の条件を持つIF関数(IF Function with Multiple Conditions)

ルールがもう少し複雑で、条件ごとに異なる結果が返される複数の論理条件をテストする必要がある場合はどうなりますか?

Excelにはこれに対する答えがあります!同じセル内で複数のIF関数を組み合わせることができます。これは、ネストされたIF(Nested IF)と呼ばれることもあります。

以下のように、販売場所(Sales Location)ごとにコミッション(Commissions)が異なる同様のシナリオを考えてみます。

  • アメリカ(USA)10%
  • オーストラリア(Australia)5%
  • シンガポール(Singapore)2%

セルF2(Cell F2)(後で同じ列Fの残りの行にコピーされます)に、次のように数式を入力します。

=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))

数式の内訳:

  1. =IF( –IFステートメントを使用した式の開始(Beginning)
  2. D2=”USA” –実行する最初(First)の論理テスト(つまり、列D2のデータがUSAの場合)。
  3.  E2*10% –最初の論理テストの結果が(Result)TRUEの場合(つまり、列D2の値がUSAの場合)、数式によって返される結果。
  4. IF(D2=”Australia”,E2*5%,E2*2%) –最初の論理テストの結果がFALSE(つまり、列D2の値がUSAでは(USA)ない)の場合に評価される2番目の(NOT)ExcelIFステートメント。これは、この記事で前述した「単一条件のIF関数(IF Function with Single Condition”)」と同様の構文であり、セル(Cell)D2の値がオーストラリアの場合、 (Australia)E2*5%の結果が返されます。それ以外の場合、値がオーストラリアでない場合、関数は(Australia)E2*2%.の結果を返します。
  5. –最初のIF関数の式の終わりを示す閉じ括弧。(Closing)

Excelは数式を左から右に評価するため、論理テストが満たされると(たとえば、D2=“USA”,、関数は停止して結果を返し、その後の論理テストは無視します(たとえば、D2=“Australia”。 )。

したがって、最初の論理テストがFALSEを返した場合(つまり、場所がUSAでない場合)、2番目の論理テストの評価を続行します。2番目の論理テストでもFALSEが返された場合(つまり、場所がオーストラリアではない場合)、(Australia)セルD2(Cell D2)で可能な値はシンガポール(Singapore)のみであることがわかっているため、さらにテストする必要はありません。したがって、 E2*2%の結果が返されます。

 わかりやすくするために、3番目の論理テストIF(D2=”Singapore”, “value if TRUE” , “value if FALSE”)を追加できます。したがって、完全な拡張式は次のようになります。

=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,IF(D2="Singapore",E2*2%)))

前述のように、上記は最初の式と同じ結果を返します。

=IF(D2="USA",E2*10%,IF(D2="Australia",E2*5%,E2*2%))

クイックヒント(Quick Tips)

  • IF(関数ごとに、開きと閉じの丸括弧が必要です。上記の例の1つにあるように3つのIF関数がある場合、式には3つの閉じ括弧「)))」が必要です。対応する開始IF(ステートメント。
  • 論理テストの2番目の結果を指定しない場合(論理テストの結果がFALSEの場合)、 (FALSE)Excelによって割り当てられるデフォルト値はテキスト「FALSE」になります。(“FALSE”.)したがって、数式=IF(D2=”USA”,E2*10%)D2“ USA”でない場合、テキスト「FALSE」を返します。
  • それぞれ独自の結果を持つ複数の異なる論理テストがある場合は、上記の例のように、IF関数を次々に複数回結合/ネストできます。



About the author

私は 10 年以上の経験を持つコンピューターの専門家です。余暇には、オフィスのデスクを手伝ったり、子供たちにインターネットの使い方を教えたりしています。私のスキルには多くのことが含まれますが、最も重要なことは、人々が問題を解決するのを助ける方法を知っていることです. 何か緊急のことを手伝ってくれる人が必要な場合や、基本的なヒントが必要な場合は、私に連絡してください!



Related posts