GoogleスプレッドシートでIfとNestedIfを使用する方法

ほぼすべてのプログラミング言語で最も一般的に使用されるステートメントの1つは、IFステートメントです。したがって、 Googleスプレッドシート(Google Sheets)でIFおよびネストされたIFステートメントを使用することが非常に人気があり、非常に便利であることは当然のことです。

Googleスプレッドシート(Google Sheets)のIFステートメントを使用すると、他のセルの条件に基づいて、セルにさまざまな関数を挿入できます。IFステートメントをネストすると、データに基づいてより高度な分析を作成できます。この記事では、これを行う方法といくつかの例を学びます。

GoogleスプレッドシートでのIFステートメント(IF Statement)の使用

ファンシーになってIFステートメントのネストを開始する前に、まずGoogleスプレッドシート(Google Sheets)で単純なIFステートメントがどのように機能するかを理解する必要があります。

これを理解する最も簡単な方法は、例を使用することです。最初の例では、インターネットからハイキングを考えている山のリストとその標高を取得したとします。

標高3000フィートを超える山のハイキングにのみ関心があります。したがって、「3000フィート以上」という別の列を作成します。IFステートメントは、このフィールドに入力する最も簡単な方法です。

IFステートメントの仕組みは次のとおりです。

IF(logical_expression、value_if_true、value_if_false)

IFステートメントのパラメーターは次のように機能します。

  • Logical_expression:これは、<、>、=などの演算子を使用する条件ステートメントです。
  • Value_if_true :論理式が(Value_if_true)TRUEの場合、セルに必要なものを入力します。
  • Value_if_false :論理式が(Value_if_false)FALSEの場合、セルに必要なものを入力します。

この例では、最初の行から開始して、セルC2にカーソルを置きます。次に、次の数式を入力します。

=IF(B2>3000,”YES”,”NO”)

このIFステートメントは、セルB2の山の高さが3000より大きい場合は、セルC2にYESを表示し、そうでない場合はNOを表示することを意味します。(YES)

Enterキー(Enter)を押すと、セルC2に正しい結果(YES )が表示されます。(YES)

このセルの下にある残りのセルを自動入力するためのGoogleスプレッドシート(Google Sheets)の提案も表示される場合があります。先に進み、この同じ機能で残りのセルを自動入力する場合は、チェックマークを選択します。参照は、それらの山の高さの正しいセルに自動的に更新されます。

この提案が表示されない場合は、キーボードのShiftキーを押しながら、最初の数式を入力したセルの右下隅にある小さな四角をダブルクリックします。

GoogleスプレッドシートでネストされたIFステートメントを使用する(Statements)

次に、 Googleスプレッドシート(Google Sheets)でネストされたIFステートメントを作成する例を見てみましょう。

上記と同じ例を使用して、標高3,000フィートを超えていないリストの最初の山を見つけて、次の「簡単な」ハイキングとして選択するとします。条件に一致する次の項目を列で上から下に検索するには、ネストされたIFステートメントが必要です。

結果を表示するセルにカーソルを置きます。次に、次の数式を入力します。

=IF(B2<3000,A2,IF(B3<3000,A3,IF(B4<3000,A4,IF(B5<3000,A5,IF(B6<3000,A6,IF(B7<3000,A7,IF(B8<3000,A8,IF(B9<3000,A9,IF(B10<3000,A10,IF(B11<3000,A11,IF(B12<3000,A12,IF(B13<3000,A13,IF(B14<3000,A14,IF(B15<3000,A15,”None”))))))))))))))

少しクレイジーに見えますね。はい、ネストされたIFステートメントは複雑になる可能性があります。これを分解して、より意味のあるものにしましょう。

ステートメントの最初の部分(=IF(B2<3000)は、列の最初のセルが3000未満であるかどうかをチェックします。そうである場合、それは3000の下のリストの最初の山であるため、A2(、A2 )を返します。 )そのIFステートメントが真であるため。 

falseの場合、次の列をチェックするために別のIFステートメントをネストする必要があります(,IF(B3<3000)。これがtrueの場合、A3(、A3)を返します。

このIFステートメントのネストをA15まで繰り返すまで繰り返してから、繰り返される「)」文字を使用してすべてのifステートメントを閉じます。

ネストされたIFステートメントの最後の「false」パラメーターが「None」(“None”)であることに気付くでしょう。これは、A15も3000フィート未満でない場合、どの山も3000フィート未満ではないためです。

この例では、セルD2の結果は次のようになります。

ヒント(Pro-tip):これを行う簡単な方法は、INDEXMATCH、およびVLOOKUP関数(VLOOKUP functions)を使用することです。

ネストされたIFステートメントで(IF Statement)最大数(Highest Number)を見つける

前の例では、IFステートメントはその前のIFステートメント内にFALSE(FALSE)パラメーターとしてネストされていました。IFステートメントをネストする反対の例は、それらをTRUEパラメーターとしてネストすることです。

このアプローチを使用して、リスト内の最大数を見つけることができます。たとえば、学生とそのテストの成績のリストがあるとします。ネストされたIFステートメントを使用して、最高のグレードを検索します。

結果を配置するセルにカーソルを置き、次の数式を入力します。

=IF(B2>B3,IF(B2>B4,B2,IF(B4>B3,B4,B3)),B3)

ステートメントの最初の部分(=IF(B2>B3)は、列の最初のセルが2番目のセルより大きいかどうかを確認します。大きい場合は、そのセル(B2)が最大である可能性がありますが、それでも確認する必要があります。したがって、TRUEパラメータの代わりに、B2をB4に対してチェックする別のIFステートメントをネストします。 

  • B2がまだB4より大きい場合は、それが最大の数値であり、次のTRUEパラメーターとしてB2を返すことができます。 
  • そうでない場合は、B4が最大数になる可能性があります。したがって、FALSEパラメータはB4をB3に対してチェックする必要があります。大きい場合は最大数であり、この最後のIFステートメントはTRUEパラメーターでB4を返します。 
  • そうでない場合は、B3が最大であり、最後のFALSEパラメーターとして返される必要があります。 
  • 最後に、2番目のチェック(B2> B4)がfalseの場合、最初のIFステートメント(B2> B3)がすでにfalseであるため、B3が最大であり、B3をこのFALSEパラメーターとして返すことができます。

結果は次のようになります。

まだ混乱していますか?

あなたは一人じゃない。このようなものにネストされたIFステートメントを使用することは、かなり複雑です。また、リストにさらに番号を追加すると、さらに複雑になります。

そのため、Googleスプレッドシート(Google Sheets)には、セルの範囲(この場合は列)を渡すだけのMAX関数があり、最大数が返されます。(MAX)最小値を返すMIN関数もあります。

現実的なネストされたIFGoogleスプレッドシートの例(Realistic Nested IF Google Sheets Example)

前の2つの例は、実際には使用すべきでないときにネストされたIFステートメントを使用すると、混乱に陥りやすいことを示すことを目的としています。それは入りやすい罠です。あなたがやろうとしていることを達成するために、常によりシンプルで単一のGoogleスプレッドシート(Google Sheets)機能を探してください。

たとえば、あなたが会社を所有していて、4人の従業員に関するフィードバックを受け取ったとします。フィードバックを受け取った4つの特性に基づいて、各従業員が販促資料であるかどうかを判断する必要があります。

ネストされたIFステートメントを記述して、各特性の回答を調べ、結果列に決定を提供することができます。

従業員がそうでなかった場合:

  • Punctual:あまり心配していませんが、宣伝することはできません(おそらくそうではありません)。
  • 効率的(Efficient):あなたはあまり心配していません、そしてそれでも昇進するかもしれません(多分)。
  • リーダーシップの質(Leadership Quality):フィードバックに同意する場合は、昇進できない場合があります(おそらくそうではありません)。
  • 信頼できる(Trustworthy):あなたは絶対に宣伝したくない(絶対にそうしない)。

これらの決定をネストされたIFステートメントにプログラムできます。結果が必要なセルにカーソルを置き、次の数式を入力します。

=IF(B2=”YES”,IF(C2=”YES”,IF(D2=”YES”,IF(E2=”YES”,”Definitely”,”Maybe Not”),”Maybe”),”Maybe Not”),”Definitely Not”)

これは単純なネストされたIFステートメントであり、すべての応答が「YES」の場合は「Definitely」を返しますが、個々のセルのいずれかが「NO」であるかどうかに応じて異なる回答を返します。

これは、ネストされたIFステートメントが適切な数少ない例の1つです。ただし、前述のように、もっと複雑なことをする必要がある場合は、同じ目標をはるかに簡単に達成 できる既存のGoogleスプレッドシート関数を探す方がはるかに良いでしょう。(Google Sheets)

高度な「IF」関数の例としては、SUMIFCOUNTIFS、SUMIFS、AVERAGEIFSなどがあります(COUNTIFS, SUMIFS, and AVERAGEIFS)



About the author

私は、Excel や PowerPoint などの Microsoft Office ソフトウェアの使用経験があるコンピューターの専門家です。また、Google が所有するブラウザーである Chrome の使用経験もあります。私のスキルには、書面および口頭での優れたコミュニケーション、問題解決、批判的思考が含まれます。



Related posts