Excel 複数の条件に一致するセルの値を合計(SUMIFS関数)
SUMIFS関数は複数の条件を満たすセルの合計値を表示する関数です。
SUMIF関数(条件と条件範囲が一つだけ)の上位版にあたります。
仕様
=SUMIFS(合計範囲,条件範囲1,条件1 …省略… 条件範囲127,条件127)
引数 | 省略時の値 | 説明 |
---|---|---|
合計対象範囲 | 省略不可 | 合計対象とするセル範囲を指定。 合計範囲内で数値以外のセルは対象外。 |
条件範囲1~127 | 1のみ省略不可 | 条件の評価対象とするセル範囲を指定。 |
条件1~127 | 1のみ省略不可 | 合計対象に含める条件を指定。 |
使用例
例えば商品の中で特定のカテゴリ、かつセール対象となっている
売上だけを合計するような、ケースに使用することが出来ます。
またセール対象、かつ特定の単価以上の売上を合計といった
大小比較が条件となる場合にも使用可能です。
集計元表
下記の表を参照するSUMIFS関数を例示します。
特定の文字列に一致するデータを合計する例
C列の種類に一致する、かつセール対象となっている金額を集計元表から検索し合計する例です。
D列がSUMIFS関数を使った合計結果です。
SUMIFS関数を下記のようにセル指定します。
引数 | 設定例 |
---|---|
合計対象範囲 | 集計元表の金額のセル範囲(絶対参照) |
条件範囲1 | 集計元表の種類のセル範囲(絶対参照) |
条件1 | 結果表の種類のセル (D16ではC16) |
条件範囲2 | 集計元表のセール対象のセル範囲(絶対参照) |
条件2 | "●" |
条件範囲1~2と合計対象範囲はコピーで位置が変わっても参照先の一覧表は変わらないため、
コピーしても固定されるよう絶対参照で指定します。
今回は完全一致させていますが、ワイルドカードを用いて部分一致させることも可能です。
数値の閾値を設定して合計する例
特定の単価以上で、かつセール対象である金額の合計を集計する例です。
D列がSUMIFS関数を使った合計結果です。
条件に比較演算子を指定して特定数値以上や以下などの条件を設定することが可能です。
ここの例では1行目は単価200円以上のセール対象の合計、
2行目は単価300円以上のセール対象の合計を出しています。
なお比較演算子は"(ダブルコーテーション)で囲み、文字列として扱う必要があります。
&(アンパサンド)は文字列連結演算子です。
D21の「">="&C21」は結果として">=200"と処理されます。
スピルを利用する方法とメリット
Office365やExcel2019以降ではスピルという形式で記述可能です。
これは複数セルに数式をコピーする場合に便利な機能です。
スピルの利用には条件を複数セルの範囲で指定します。
数式を入力するのは最初の一つのセルですが、
引数3と5で指定した高さ分、数式がセルのコピーなしで自動拡大されます。
スピルを利用することで今回の例では、
E16セルに入力するだけでよいため(E17以降にコピーペーストが不要)
以下のメリットがあります。
- 入力の手間が少ない(数式のセルが多いほど効果が大きい)
- 数式を編集した時、コピー忘れのリスクがない(最初のセルを更新すると全セルに反映)
- 絶対参照が不要
- 途中に行を追加した場合、数式のコピー&ペーストが不要。行削除でも壊れにくい。
=BYROW(A1:C3,LAMBDA(r,SUMIFS(r,r,">=3",r,"<=7")))
=BYCOL(A1:C3,LAMBDA(c,SUMIFS(c,c,">=3",c,"<=7")))
Excelを効率的に習得したい方へ
当サイトの情報を電子書籍用に読み易く整理したコンテンツを
買い切り950円またはKindle Unlimited (読み放題) で提供中です。
Word-A4サイズ:1,400ページの情報量で
(実際のページ数はデバイスで変わります)
基本的な使い方、関数の解説(140種類)、
頻出テクニックと実用例(109種類)、
XLOOKUP関数、LET関数、シートビュー、LAMBDA関数、スピルなど便利な新機能を紹介。
体系的に学びたい方は是非ご検討ください。
アップデートなどの更新事項があれば随時反映しています。
なお購入後に最新版をダウンロードするには
Amazonへの問い合わせが必要です。