ExcelのSUMIF関数の使い方:条件に一致する行だけを合計する
ExcelのSUMIF関数を使って条件付き合計を求める方法を徹底解説。特定カテゴリの売上、一定額以上の集計、あいまい検索(ワイルドカード)の実例や、SUMIFS関数との引数の順番の違いまでわかりやすく紹介します。
著者 Ayoub Farid · · 5 分で読めます
SUMIF(サムイフ)関数は、指定した1つの条件に一致する行の数値だけを合計するエクセル関数です。「食費」の合計支出、1,000円を超える請求書の合計、特定エリアの売上集計など、日々の実務で最も役立つ数式のひとつです。
構文
=SUMIF(range, criteria, [sum_range])
- range(範囲): 条件を検索するセル範囲
- criteria(条件): 合計の対象とする条件
- sum_range(合計範囲): 実際に合計するセル範囲(省略した場合は
range自体が合計されます)
基本的な使用例
| A | B | C | |
|---|---|---|---|
| 1 | 日付 | 項目 | 金額 |
| 2 | 3月1日 | 食費 | 42 |
| 3 | 3月2日 | 交通費 | 15 |
| 4 | 3月3日 | 食費 | 28 |
=SUMIF(B2:B4,"Food",C2:C4) → 70
数値の条件を指定する
100を超える金額だけを合計する場合:
=SUMIF(C2:C100,">100")
このように、条件を判定する列と合計したい数値の列が同じである場合は、sum_range(合計範囲)を省略できます。
セル参照を条件に使う
=SUMIF(B2:B100,F2,C2:C100)
=SUMIF(C2:C100,">"&F1)
F列にカテゴリ名(項目)を並べて数式をオートフィル(下にコピー)すれば、全体の集計表を素早く作成できます。その際は、検索範囲と合計範囲をドル記号($)で固定しておきましょう:=SUMIF($B$2:$B$100,F2,$C$2:$C$100)。詳しくは絶対参照の解説をご覧ください。
ワイルドカードを使ったあいまい検索
=SUMIF(A2:A100,"*coffee*",C2:C100)
A列のどこかに「coffee」という文字列が含まれている行のみを合計します。
引数の順番に関する落とし穴
SUMIF関数では合計範囲(sum_range)を最後に指定します。しかし、SUMIFS関数では合計範囲を最初に指定します:
=SUMIF(B2:B100,"Food",C2:C100)
=SUMIFS(C2:C100,B2:B100,"Food")
順番の混乱を避けるため、条件が1つだけの場合でも最初からすべてSUMIFS関数で統一して覚えている人も少なくありません。
よくあるミスと注意点
- 範囲のサイズ(行数)が異なる: SUMIF関数は合計範囲のサイズを自動で調整してしまうため、指定を誤ると予期せぬ計算結果になります。検索範囲と合計範囲の行数は必ず一致させてください。
- 文字列として保存されている数値: 金額の列に数値がテキスト形式で入力されていると、合計の対象から除外されます。
- 末尾の余分なスペース: 「食費 」のように後ろに半角・全角スペースが入っていると、「食費」と一致しないため除外されます。TRIM関数であらかじめ余分な空白を削除しておきましょう。
実務での活用シーン
- 項目ごとの月別予算管理:予算管理スプレッドシートを参照
- 担当者別の売上集計
- プロジェクト別の工数(時間)集計
- 期日を過ぎた未払い請求書の合計:
=SUMIF(D2:D100,"<"&TODAY(),C2:C100)
よくある質問
Excelで条件に一致するセルだけを合計するにはどうすればよいですか?
=SUMIF(条件範囲, "条件", 合計範囲) という書式を使用します。例えば =SUMIF(B:B,"Food",C:C) のように入力します。
SUMIF関数とSUMIFS関数の違いは何ですか?
SUMIF関数は指定できる条件が1つだけで、合計範囲を最後に指定します。SUMIFS関数は複数の条件を指定でき、合計範囲を最初に指定します。
SUMIF関数の条件にセルを指定することはできますか?
はい、可能です。セルを直接参照する場合は =SUMIF(B:B,F2,C:C)、比較演算子と組み合わせる場合は ">"&F2 のように記述します。
SUMIF関数は大文字と小文字を区別しますか?
いいえ、大文字と小文字は区別されません。