Excelで、複数の列にわたる条件を満たす数値を合算する関数を作成する方法について解説します。特に、特定の列(D、C、B)にある数字を条件に応じて選択し、合算するケースについて詳しく説明します。
問題の概要
質問者が提案している問題では、以下のような条件があります。
- 列Dに数字がある場合、その数字を採用。
- 列Dが空欄で列Cに数字がある場合、Cの数字を採用。
- 列C、Dが両方とも空欄である場合、列Bの数字を採用。
このような条件に基づいて、Excelでどのように関数を作成するかを見ていきます。
Excel関数の作成方法
この条件を満たすために使用する関数は、主に「IF」関数と「ISBLANK」関数を組み合わせたものです。以下の関数を使うことで、質問者が求めている結果を得ることができます。
=IF(NOT(ISBLANK(D1)), D1, IF(NOT(ISBLANK(C1)), C1, B1))
この関数は、以下の順序で評価を行います。
- まず、D1セルが空欄でない場合、その値(D1)を返します。
- D1が空欄で、C1が空欄でない場合、C1の値を返します。
- それらが両方とも空欄である場合、B1の値を返します。
複数行にわたる合計を計算する
複数の行にわたって同じような処理を行いたい場合、例えばA列に各組の名前が入力されている場合、次のように「SUM」関数を使って、複数の行を一度に処理できます。
=SUM(IF(NOT(ISBLANK(D1:D4)), D1:D4, IF(NOT(ISBLANK(C1:C4)), C1:C4, B1:B4)))
これにより、D、C、B列の条件に基づいて選ばれた値がすべて合計されます。注意点として、上記の関数は「配列数式」として入力する必要があります。配列数式を入力するには、「Ctrl + Shift + Enter」で確定します。
条件に応じた数式の改良
質問者のケースでは、特定の列が空欄の場合に他の列を採用するという条件を設定しています。上記の方法に従って、必要なセルを設定し、Excelで条件に従った値の合計を求めることが可能です。さらに、Excelのバージョンや設定によっては、関数の一部を調整することが求められる場合があります。
まとめ
Excelで条件に基づいて数値を選択して合算する方法は、IF関数やISBLANK関数を組み合わせることで実現できます。質問者が求めているような「D、C、Bの順に条件を満たす値を合算する」という問題も、配列数式を使うことで簡単に解決可能です。条件が複雑になった場合でも、IF関数のネストやその他の関数を工夫することで柔軟に対応できます。


コメント