その場合、Excelで関数を使用する方法。 ()が販売ボーナスを計算する場合、入れ子関数を使用してどのように優れているか

セルの論理チェックを実行する機能は、強力なツールです。 あなたはのための無限の用途を見つけるでしょう もしも() あなたの日々の文書で。 問題は、多くの場合、必要なチェックが単純な関数の機能を超えていることです。 もしも() ..。 これは、結果を受け入れる前に2つ以上の条件をチェックする必要がある場合に発生します。

このような場合、Excelにはいくつかのオプションがあります。 もしも() 別の内側 もしも()、 機能 と()およびIL と()..。 次に、これらのメソッドを見ていきます。

使用法 もしも()別の関数の内部 もしも()

以前に調査した関数= IF(A1> 1000; "a lot"; "little")に基づくバリアントを考えてみましょう。 たとえば、A1の数値が10.000より大きい場合に、別の文字列を印刷する必要がある場合はどうなりますか? つまり、A1> 1000が真の場合、別のテストを実行して、A1> 10000が真であるかどうかを確認する必要があります。 2番目の関数を適用することにより、このようなバリアントを作成できます。 もしも() 引数としての最初の値の中に、値_if_true:= IF(A1> 1000; IF(A1> 10000; "very much"; "many"); "little")。

A1> 1000が真の場合、別の関数がトリガーされます もしも()、A1> 10000の場合に値「非常に」を返します。 この場合、A1が10000以下の場合、値「alot」が返されます。 最初のチェック中にA1番号が1000未満の場合、値「little」が表示されます。

最初のチェックがfalseの場合(つまり、ifo関数のvalue_if_false引数で)、2番目のチェックを実行することもできることに注意してください。 これは、A1の数値が100未満の場合に値「非常に小さい」を返す小さな例です。= IF(A1> 1000; "many"; IF(A1<100;"очень мало"; "мало")) .

売上ボーナスの計算

ある小切手を別の小切手で使用する良い例は、スタッフへの販売ボーナスを計算することです。 クラブで働く人-ホテルHelioparkTalasso、Zvenigorod。 この場合、値がXの場合、1つの結果が必要です。Yが別の場合、Zの場合
- 第3。 たとえば、成功した販売のボーナスを計算する場合、次の3つのオプションが可能です。

  1. 売り手は計画値に達していません。ボーナスは0です。
  2. 売り手は計画値を10%未満超えました、ボーナスは1,000ルーブルです。
  3. 売り手は計画値を10%以上超えており、ボーナスは10,000ルーブルに相当します。

このような例を計算するための式は次のとおりです。= IF(E3> 0; IF(E3> 0.1; 10000; 1000); 0)。 E3の値が負の場合、0が返されます(ボーナスなし)。 結果が陽性の場合は、10%以上かどうかをチェックし、それに応じて1,000または10,000を発行します。 4.17は、式がどのように機能するかの例を示しています。

AND()関数

多くの場合、同時に2つの条件の忠実度のみをチェックする必要があります。 たとえば、ボーナスは、特定の製品の売上が計画を上回り、総売上が計画を上回った場合にのみ支払われます。 これらの条件のいずれか(または両方の条件)が満たされない場合、プレミアムは支払われません。 ブール論理では、式全体が真になるには両方の条件が真でなければならないため、これは論理積と呼ばれます。

Excelでは、ブール式 関数を使用して処理 と():AND(boolean1; boolean2; ...)。 各引数は、テストするブール値です。 引数はいくつでも入力できます。

もう一度、関数がどのように機能するかに注意しましょう。

  • すべての式がTRUE(または任意の正の数)を返す場合、 と() TRUEを返します。
  • 1つ以上の引数がFALSE(または0)を返す場合、 と() FALSEを返します。

よく と()関数内に適用 もしも()..。 この場合、すべての引数が内部にあるとき と() TRUEを返します、関数 もしも() trueの場合、ブランチ値に従います。 1つ以上の式が と() FALSEを返します。関数 もしも()ブランチvalue_if_falseに従います。

小さな例を次に示します。= IF(AND(C2> 0; B2> 0); 1000; "ボーナスなし")。 B2の値がゼロより大きく、C2の値がゼロより大きい場合、数式は1000を返します。そうでない場合、「ボーナスなし」という行が表示されます。

値をカテゴリに分ける

and()関数の便利な使用法は、値で分類することです。 たとえば、投票または投票の結果を示すテーブルがあり、すべての投票を18-34.35-49、50-64.65以上の年齢範囲に従ってカテゴリに分割したいとします。 回答者の年齢がセルB9にあると仮定すると、次の関数の引数と()は、範囲に属する年齢の論理チェックを実行します。= AND(B9> = 18; B9


個人の回答がセルC9にある場合、18〜34歳の年齢層への準拠のチェックがトリガーされると、次の数式はその個人の投票結果を出力します。= IF(AND(B9> = 18; B9

  • 35-49:= IF(AND(B9> = 35; B9
  • 50-64:= IF(AND(B9> = 50; B9
  • 65 +:= IF(B9> = 65; C9; "")

OR()関数

条件の1つが正(TRUE)の場合にのみ決定が必要な場合があります。 たとえば、総売上高が目標を上回った場合、または個々のアイテムの売上高が予測を上回った場合に、従業員にボーナスを支払うことを決定できます。 ブール論理では、これはブールと呼ばれます また.

このような条件は、Excelで関数を使用してチェックされます また():OR(boolean1、boolean2、...)。 各引数は、テストするブール値です。 引数はいくつでも入力できます。 仕事の結果 また()次の条件によって異なります。

  • 1つ以上の引数がTRUE(任意の正の数)を返す場合、 また() TRUEを返します。
  • すべての引数がFALSE(ゼロ)を返す場合、結果は次のようになります。 また() FALSEになります。

と同じように と()、ほとんどの場合、関数 また()チェック内で使用 もしも()..。 この場合、内部の引数の1つが また() TRUEを返します、関数 もしも()そのブランチvalue_if_trueに従います。 すべての式が また() FALSEを返します。関数 もしも()ブランチに従ってください value_if_false..。 小さな例を次に示します。= IF(OR(C2> 0; B2> 0); 1000; "ボーナスなし")。

セルの1つ(C2またはB2)に正の数がある場合、関数は1000を返します。両方の値が負(またはゼロに等しい)の場合にのみ、関数は文字列「ボーナスなし」を返します。

この記事では、Excelスプレッドシートエディタの「If」機能に焦点を当てます。 アプリケーションの論理機能を扱います。 この機能は、操作中によく使用される最も一般的な機能に起因する可能性があります。


主な機能

V Excelプログラム「If」式を使用すると、特定の値を比較して結果を取得する必要があるさまざまな種類のタスクが可能になります。 このソリューションにより、分岐アルゴリズムを使用して、決定木を作成することができます。

アプリケーション例

関数は次のようになります:= IF(task; true; false)。 最初 一部のブール式です。 フレーズまたは数字として表示できます。 たとえば、「10」または「VATを除く」。 このパラメータを入力する必要があります。 Trueは、式がtrueの場合に結果として表示される値です。 Falseは、タスクが正しくない場合に返されるデータを表します。

2つのセルのパラメータの同等性

ExcelのIf関数の機能をよりよく理解するには、例を提供する必要があります。 したがって、さらにそれらを検討し始める価値があります。 セルC1に値8を入力する必要があります。その後、アドレスD1のフィールドに、次の形式の数式を入力する必要があります。= IF(C1<10; 1; 2). В результате программа самостоятельно начинает сравнение параметров из клетки C1 со значением 10. Когда оно достигнет десяти, в поле по адресу D1 можно увидеть единица. В противном случае редактор отобразит 2.

別の例を考えることができます。 試験のために獲得した数人の学生とその成績があります。 データは次のとおりです。5、4、3、2。課題の条件に従って、各生徒に「合格」または「不合格」のテキスト解説を作成することが想定されています。 したがって、学生が3以上の成績を取得した場合、その学生は試験に合格したと見なされます。 彼の成績が3未満の場合、生徒はうまくいきませんでした。 このような問題を解決するには、次の式を書く必要があります。= IF(C1<3; «не справился»; «сдал»).

プログラムは、各学生の結果の比較を開始します。 インジケーターが3未満の場合、対応するセルに「失敗」という表記が表示されます。 マークが3以上の場合、必須の列に、学生が試験に合格しなかったというコメントが表示されます。 テキストコメントは常に引用符で囲む必要があることに注意してください。 この関数を使用する場合、次の比較演算子を使用できます。< >, =, >, <, >=, <=.

条件「OR」、「AND」を使用した例

このアプリケーションの論理的な可能性をさらに検討する必要があります。 「If」関数を比較演算子と組み合わせることができます。 これらは次のパラメータです。

"また";
"と"。

Excelで重要な条件を示す必要があります。生徒の成績が5以下で、3を超える場合。この場合、「合格」または「いいえ」のコメントを表示する必要があります。 したがって、5と4を獲得した学生だけが合格します。 このタスクをスプレッドシートエディタで作成するには、特別な数式を適用する必要があります。 次のようになります:= IF(AND(A1<=5; A1>3); 「合格」、「いいえ」)。

より複雑な例を検討する場合は、「OR」または「AND」を使用する必要があります。 したがって、ジョブに複数の条件がある場合は、Excelで数式を適用することに慣れることができます。 例:= IF(OR(A1 = 5; A1 = 10); 100; 0)。 この場合、セルA1の値が5または10の場合、プログラムは結果100を表示すると結論付けることができます。それ以外の場合は0です。これらの演算子を使用して、より複雑な問題の解決策を見つけることができます。

たとえば、データベースでは、10,000ルーブル以上を支払う必要がある債務者を計算する必要があります。 ローンが6か月以上、つまり6か月以上返済されていないという条件を設定できます。 Excelスプレッドシートエディタの「If」機能のおかげで、対応する名前の横に「問題のあるクライアント」というマークを自動的に付けることができます。 セルA1に、債務の期間(月)を示すデータが含まれているとします。 フィールドB1には金額が含まれています。

この場合、式は次の形式で表されます。= IF(AND(A1> = 6; B1> 10000); "問題のあるクライアント"; "")。 したがって、指定された条件を満たす人物が識別された場合、プログラムはその人物の名前の前に対応するコメントを表示します。 リストの他のメンバーの場合、このセルは空のままになります。

状況が重大な場合の例も見ることができます。 適切なコメントを入力する必要があります。 結果として、式は次のようになります。= IF(OR(A1> = 6; B1> 10000); "重大な状況"; "")。 ただし、プログラムが少なくとも1つのパラメーターの一致を検出すると、対応する注記が表示されます。

やりがいのあるタスク

ExcelのIf関数を使用して、組み込みのゼロ除算エラーを回避します。 また、他の状況でも使用されます。 最初のケースは「DIV / 0」として指定されます。 それはかなり頻繁に見つけることができます。 これは通常、「A / B」式でコピーが必要な場合に発生します。 同時に、インジケーターBは 個々のセルは0です。このような状況を回避するには、問題のオペレーターの機能を使用する価値があります。 したがって、必要な式は次のとおりです。= IF(B1 = 0; 0; A1 / B1)。 したがって、セルB1が「ゼロ」の値で満たされている場合、エディターは「0」を表示します。 それ以外の場合、プログラムはA1インジケーターをB1データで除算し、必要な結果を出します。

割引

実践が示すように、状況がしばしば発生します。これについては以下で説明します。 特定のアイテムの購入に費やされた合計金額を考慮して、割引を計算する必要があります。 使用されるマトリックスは次のとおりです。1000未満-0%。 1001-3000-3%; 3001-5000-5%; 5001以上-7%。 Excelに訪問者のデータベースと購入に費やされた金額に関する情報がある場合の状況を確認できます。 次のステップは、各顧客の割引を計算することです。 これを行うには、次の式を適用する必要があります:= IF(A1> = 5001; B1 * 0.93; IF(A1> = 3001; B1 * 0.95; ..)。

合計購入金額がチェックされます。 5001ルーブルの値を超えると、アイテムの価格の93%が乗算されます。 3001ユニットのマークを超えると、同様のアクションが発生しますが、95%はすでに考慮されています。

IF()関数 , 英語版もしも ()、 状態を確認するときに使用します。 例えば、 = IF(A1> 100; "予算超過"; "OK!")..。 セルの値に応じて A1数式の結果は、「予算超過」または「OK!」のいずれかになります。

IF()関数は、最も一般的に使用される関数の1つです。

関数の構文

IF(boolean_test、value_if_true、[value_if_false])

Log_Expression-TRUEまたはFALSEの値をとる値または式。
= IF(A1> = 100; "予算超過"; "OK!")
それらの。 セル内の場合 A1 100以上の値が含まれている場合、数式は次のようになります。 わかった!、そうでない場合は、 予算を超えました.

数式は、関数の引数として使用できます。次に例を示します。
= IF(A1> 100、SUM(B1:B10)、SUM(C1:C10))
それらの。 セル内の場合 A1 100より大きい値が含まれている場合、合計は列に対して実行されます B 、それより少ない場合は、列ごと .

ネストされたIF

EXCEL2007では引数値として value_if_truevalue_if_false最大64個のIF()関数を相互にネストして使用して、より複雑なチェックを作成できます。
= IF(A1> = 100; "予算超過"; IF(A1> = 90; "大規模プロジェクト"; IF(A1> = 50; "中規模プロジェクト"; "小規模プロジェクト")))

VIEW(A1;(0; 50; 90; 100);( "小規模プロジェクト"; "中プロジェクト"; "大プロジェクト"; "予算超過"))

VLOOKUP(A1; A3:B6; 2)

VLOOKUP()関数の場合、範囲内で作成する必要があります A3:B6 値テーブル:

セル内にある場合に別のテキストを表示する場合 A1 負の値、正の値、または0の場合、次の式を記述できます。

LOOKUP(A1;(-1E + 307; 0; 1E-307);( "<0";"=0";">0"})

または、テキスト値の代わりに数式を表示する場合は、セルの範囲(数式を含む)への参照を使用できます

ルックアップ(A24;(-1E + 307; 0; 1E-307); A27:A29)(サンプルファイルを参照)

3番目の引数を省略 [value_if_false]

関数の3番目の引数はオプションです。これを省略すると、関数はFALSEを返します(条件が満たされない場合)。
= IF(A1> 100;「予算超過」)
セル内の場合 A1 値1が含まれている場合、上記の式はFALSEを返します。

最初の引数にTRUEまたはFALSEの代わりに数値が入力されます

なぜなら 値FALSEは0に相当し、式は
= IF(0、 "予算を超えました"; "OK!")
または(セル内の場合 A1 値0を含む)
= IF(A1、 "予算を超えました"; "OK!")

戻ります わかった!

セル内の場合 A1 0以外の数値が見つかった場合、数式は次のようになります。 予算を超えました..。 このアプローチは、値がゼロに等しいかどうかをテストするときに便利です。

条件を使用してIF()関数を他の関数とリンクする

EXCELには、条件を使用してデータを分析するために使用できる他の関数も含まれています。 たとえば、COUNTIF()関数は、セルの範囲内の数値の出現回数をカウントするために使用され、SUMIF()関数は、特定の条件を満たす値を追加するために使用されます。

あるいは、IF()関数を使用して、条件を使用して値をカウントおよび追加することもできます。 実例を以下に示します。

データを範囲内にしましょう A6:A11 (サンプルファイルを参照)


SUMIF()関数を使用して、10より大きい値の合計を次のように計算してみましょう = SUMIF(A6:A11、 "> 10")..。 同様の結果(23)は、
= SUM(IF(A6:A11> 10、A6:A11))
(代わりに数式をセルに入力する 入力押す必要があります Ctrl + Shift + Enter)

次に、セルの範囲で10を超える数の出現数を数えましょう。 A6:A11 = COUNTIF(A6:A11、 "> 10")..。 同様の結果(2)は、
=カウント(IF(A6:A11> 10、A6:A11))

原理が明確になったので、IF()関数を使用して条件付きの他の式を作成できます。 たとえば、10より大きい数値の中から最小値を見つける:
= MIN(IF(A6:A11> 10、A6:A11))