Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数
 

Excel の IF ステートメントは意思決定に広く使用されていますが、必ずしも最も洗練されたソリューションであるとは限りません。条件が複雑になると、ネストされた IF ステートメントの読み取り、保守、トラブルシューティングが困難になる可能性があります。このような重層的な状況に対処するために、Excel では数式をより効率的かつ理解しやすくする強力な代替手段がいくつか提供されています。

このチュートリアルでは、IF ステートメントを置き換えることができる 7 つの Excel 関数を示します。

数式を並べて比較するサンプルの販売データセットを考えてみましょう。

1. IFS() – 複数の条件をエレガントに処理

IFS 関数は、複数の条件を順番に評価し、最初の TRUE 条件に対応する値を返します。ネストされた IF ステートメントを置き換えるのに最適です。ネストされた IF ステートメントは長くなり、デバッグが困難になります。 IFS は階層化されたロジックを簡素化します。

構文:

=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], ...)

販売注文額をパフォーマンス評価に分類してみましょう。

  • 素晴らしい 10,000 ドルを超える注文の場合
  • 良い 5,000 ドルから 10,000 ドルまでの注文の場合
  • 平均 2,000 ドルから 5,000 ドルまでの注文の場合
  • 目標を下回る それ以下のものについては。

IF アプローチ:

=IF(J2>10000, "Excellent", IF(J2>5000, "Good", IF(J2>2000, "Average", "Below Target")))

IFS アプローチ:

=IFS(J2>10000, "Excellent", J2>5000, "Good", J2>2000, "Average", TRUE, "Below Target")

IFS 関数は、次の 1 組の引数を受け取ります。

  • 条件と、その条件が TRUE の場合に返される値。
  • 最後の TRUE 引数は、前の条件を満たさない場合の包括的な機能として機能します。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

メリット:

  • 紛らわしい括弧は使用しないでください。
  • 読みやすく、保守しやすい
  • 条件の優先順位を明確に示します。

2. SWITCH() – 完全一致に最適

単一の値を複数の正確な可能性と比較する必要がある場合、SWITCH は複数の IF ステートメントより効率的です。 1 つの値を複数の完全一致と比較します。

構文:

=SWITCH(expression, value1, result1, [value2, result2], ..., [default])

営業マネージャーを地域に割り当てましょう:

  • 東:モーガン スミス
  • ウェスト:テイラー ウォン
  • 北:ジェイミー ロドリゲス
  • 南:ケイシー ジョンソン

IF アプローチ:

=IF(E2="East", "Morgan Smith", IF(E2="West", "Taylor Wong", IF(E2="North", "Jamie Rodriguez", IF(E2="South", "Casey Johnson", "Unassigned"))))

SWITCH アプローチ:

=SWITCH(E2, "East", "Morgan Smith", "West", "Taylor Wong", "North", "Jamie Rodriguez", "South", "Casey Johnson", "Unassigned")
  • SWITCH は値のリストに対して式を評価し、最初に一致した値に対応する結果を返します。
  • 一致するものが見つからなかった場合、最後の引数はデフォルト値として機能します。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

SWITCH アプローチが、ネストされた IF ステートメントと比較して、どれほどすっきりしていて読みやすいかに注目してください。

メリット:

  • コンパクトで直感的。
  • 展開や並べ替えが簡単になります。
  • ネストは必要ありません。

3. CHOOSE() – 位置によってリストから選択

ロジックに数値位置に基づいて事前定義されたリストからの選択が含まれる場合、CHOOSE はネストされた IF よりも簡単です。

構文:

=CHOOSE(index_num, value1, [value2], ...)

四半期の番号をその四半期の最初の月に変換しましょう。

IF アプローチ:

=IF(F2=1, "January", IF(F2=2, "April", IF(F2=3, "July", IF(F2=4, "October", "Invalid Quarter"))))

アプローチを選択してください:

=CHOOSE(F2, "January", "April", "July", "October")
  • CHOOSE は、位置番号に基づいてリストから値を返します。
  • IF とは異なり、条件は評価されませんが、インデックス値に基づいて提供されたリストから項目を選択します。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

CHOOSE を使用して、四半期番号に基づいて四半期の売上目標を割り当てることもできます。

=CHOOSE(F2, 50000, 75000, 60000, 90000)

これにより、四半期ごとに異なる販売目標が割り当てられます。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

メリット:

  • 選択肢が 3 つ以上ある場合は、より短く明確になります。
  • 論理エラーが発生する可能性が低くなります。
  • 更新や並べ替えが簡単になります。

4. XLOOKUP – テーブルベースの決定

値の範囲またはルックアップ テーブルに基づいて決定を行う場合、LOOKUP 関数はネストされた IF よりも強力です。 XLOOKUP 関数は値を検索し、別の配列から対応する結果を返します。

構文:

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])

製品カテゴリに基づいて手数料体系を作成してみましょう:

  • 電子機器:5%
  • 家具:7%
  • その他:4%

IF アプローチ:

=IF(C2="Electronics", J2*0.05, IF(C2="Furniture", J2*0.07, J2*0.04))

XLOOKUP アプローチ (モダン Excel):

=J2*XLOOKUP(C2, $P$2:$P$4, $Q$2:$Q$4, 0.04)

この数式は、カテゴリと手数料率に基づいて注文金額を検索し、販売手数料を計算します。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

メリット:

  • データテーブルとうまく連携します。
  • リストが長くなると読みやすくなります。
  • 柔軟性(デフォルトのフォールバックを含めることができます)

5. AND()/OR() – 複数の条件を組み合わせる

複数の条件を満たす必要がある (AND) か、少なくとも 1 つの条件を満たす必要がある (OR) 場合、これらの関数を使用すると数式が簡素化されます。 AND 関数は、すべての条件が true の場合に TRUE を返します。 OR 関数は、いずれかの条件が true の場合に TRUE を返します。

構文:

=AND(logical1, [logical2], ...)
=OR(logical1, [logical2], ...)

次の場合、注文に「優先」のフラグを立てましょう。

  • それらは電子機器です。 注文、および
  • 注文金額が5,000 ドルを超えています 、そして
  • ステータスは処理中です。 .

IF アプローチ:

=IF(C2="Electronics", IF(J2>5000, IF(K2="Processing", "Priority", "Normal"), "Normal"), "Normal")

AND アプローチ:

=IF(AND(C2="Electronics", J2>5000, K2="Processing"), "Priority", "Normal")

この式は、カテゴリとステータスに基づいて優先度を返します。両方の条件が TRUE である必要があります。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

次の場合に追加割引の対象となる注文を特定しましょう。

  • 彼らは西洋出身です 地域、または
  • 注文は 10 以上です 単位、または
  • 現在の割引は0%です。 .

OR アプローチ:

=IF(OR(E2="West", G2>10, I2=0), "Eligible for Discount", "Not Eligible")

このアプローチにより、特に条件がより複雑になる場合に、ロジックがより明確になり、保守が容易になります。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

メリット:

  • より明確な論理式。
  • 条件の変更が簡単になります。
  • IF、FILTER などの内部でうまく機能します

6. MIN()/MAX() – 範囲制約を簡素化

2 つの数値を比較する場合、MIN/MAX を使用すると条件分岐が不要になります。 MIN 関数は、選択した範囲から最小値を返します。 MAX 関数は、選択された範囲から最大の数値を返します。

構文:

=MIN(number1, [number2], ...)
=MAX(number1, [number2], ...)

次のようなポリシーを実装してみましょう。

  • どの商品も最小注文数量は 5 です。 単位。
  • どの商品でも最大注文数量は 20 です。 単位。
  • これらの制限を超えた注文は調整する必要があります。

IF アプローチ:

=IF(G2<5, 5, IF(G2>20, 20, G2))

最小/最大アプローチ:

この式により、ネストされた IF ステートメントを必要とせずに、値が 5 ~ 20 の範囲に収まることが保証されます。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

次のような割引ポリシーを実装してみましょう。

  • 注文には通常の割引率が適用されます。
  • 割引の最大額は $1,500 を超えることはできません パーセンテージに関係なく。
  • 最終価格は $500 を下回ることはできません .

これらの制約を適用した後、最終価格を計算します。

IF アプローチ:

=IF(J2-((J2*I2)/100)<500, 500, IF((J2*I2)/100>1500, J2-1500, J2-((J2*I2)/100)))

最小/最大アプローチ:

=MAX(500, J2-MIN(1500, J2*I2/100))

このアプローチは、ネストされた IF ステートメントよりもユーザーフレンドリーで理解しやすいものです。

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

メリット:

  • 簡潔で信頼できる。
  • 上限、下限、価格設定ロジックに最適です。

7. FILTER() – 動的な条件付き結果 (Excel 365 以降)

FILTER は、指定された基準を満たすことによって値を返す強力な関数であり、複数の条件をチェックする複雑な IF ステートメントを効果的に置き換えます。

構文:

=FILTER(array, include, [if_empty])

販売データから動的なレポートを作成してみましょう。 5,000 ドル以上の電子機器の注文をすべて検索します。

IF アプローチ (単一行の場合):

=IF(AND(C2="Electronics", J2>5000), B2, "")

これは行ごとにコピーする必要があり、断片化された結果が作成されます。

フィルターアプローチ:

=FILTER(B2:B13, (C2:C13="Electronics")*(J2:J13>5000), "No matching products")

この式は、電子機器メーカーからの製品をフィルタリングします

Excel の IF ステートメントを置き換える:よりクリーンな数式を実現する 7 つの強力な関数

FILTER 関数は複数の条件を組み合わせて、一致するすべてのレコードを返すことができるため、複雑な IF ロジックを使用せずに動的な条件ベースのレポートを作成するのに最適です。これは、複数の基準に基づいてデータをフィルタリングして表示する必要があるデータ分析タスクに特に強力です。

結論

IF ステートメントは柔軟性がありますが、必ずしも最も効率的なソリューションであるとは限りません。 IF 関数の制限を克服できる Excel 関数は他にもあります。 IF ステートメントに代わるこれらの方法をマスターすると、よりクリーンで保守しやすい Excel 数式を作成できます。各関数には特定のシナリオに適した強みがあり、適切な関数を選択すると、スプレッドシートの読みやすさとパフォーマンスが大幅に向上します。

ソリューション付きの高度な Excel 演習を無料で入手しましょう!
  1. Excelで強調表示する方法

    知っておくべきこと ホームセルスタイル 、ハイライトとして使用する色を選択します。 フォントの色 色を選択します。 ハイライトスタイルを作成するには:ホームセルスタイル新しいセルスタイル 。名前を入力し、フォーマット記入 OK 。 この記事では、Excelで強調表示する方法について説明します。追加の手順では、カスタマイズされたハイライトスタイルを作成する方法について説明します。手順は、Excel 2019、2016、およびExcel forMicrosoft365に適用されます。 なぜハイライトするのですか? Excelでセルを強調表示することを選択すると、データや単語を目立たせ

  2. Excel でテキストを数値に変換する方法 (8 つの簡単な方法)

    ワークシートの数字が奇妙な動作をすることがあります。彼らは算術演算を実行するべきではありません。これは、数値として表示されているにもかかわらず、テキストとして書式設定されているためです。この記事では、Excel でテキストを数値に変換する方法を紹介します。 ここから練習用ワークブックをダウンロードできます。 Excel でテキストを数値に変換する 8 つの簡単な方法 この記事では、Excel でテキストを数値に変換する方法について説明します。 .まず、セルの書式設定を適用します。次に、エラー チェック オプションを使用します。 3 番目に、Text to Columns を使用します