「Excelでセルの合計を出したいけど、足し算をいちいち手入力するのは面倒…」そんな経験、ありませんか?
ExcelのSUM関数を使えば、指定した範囲の数値を一発で合計できます。文字列や空白セルは自動でスキップしてくれるので、データが多少ばらついていても安心ですよ。
この記事では、SUM関数の基本から実務活用パターン、よくあるエラーの対処法まで紹介します。SUMIF関数やSUBTOTAL関数との使い分けもまとめているので、合計まわりの悩みを一気に解消してくださいね。
ExcelのSUM関数とは?
SUM関数(読み方: サム関数)は、指定した数値やセル範囲を合計する関数です。「SUM」は英語の「Sum(合計)」がそのまま名前になっています。
Excelの中でもっとも使用頻度が高い関数のひとつです。売上の集計、経費の合計、在庫数の合算など、事務作業のあらゆる場面で活躍します。
SUM関数にできることをまとめると、次のとおりです。
- 指定したセル範囲の数値を合計する
- 複数の離れたセル範囲をまとめて合計する
- 数値を直接引数に渡して計算する
- 文字列や空白セルは自動的にスキップする
「数値を全部足してね」とExcelにお願いする関数、というイメージですね。
NOTE
SUM関数はExcel 2007以降のすべてのバージョンで使えます。Microsoft 365でももちろん対応していますよ。
SUM関数の書き方(構文と引数)
基本構文
=SUM(数値1, [数値2], ...)
カッコの中に、合計したい数値やセル範囲を指定します。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 数値1 | 必須 | 合計したい最初の数値、セル参照、またはセル範囲 |
| 数値2, … | 任意 | 追加で合計したい数値やセル範囲(最大255個まで) |
引数が2つ以上ある場合は、カンマ( , )で区切ります。
引数に指定できるものは3種類あります。
- 数値を直接入力:
=SUM(10, 20, 30)→ 結果は60 - セル参照:
=SUM(A1, B1, C1)→ 各セルの値を合計 - セル範囲:
=SUM(A1:A10)→ A1からA10までを合計
これらを組み合わせることもできます。=SUM(A1:A5, C1, 100) のように、範囲・セル参照・数値を混ぜて書けるのがポイントです。
SUM関数の基本的な使い方
ここからは、実際にSUM関数を入力する手順を見ていきましょう。
セル範囲を合計する(もっとも基本のパターン)
A1からA5に入った売上データの合計を出すには、次のように入力します。
=SUM(A1:A5)
A1:A5の「:(コロン)」は「A1からA5まで」という意味です。セルを1つずつ指定する必要がないので、データが多いときに便利ですよ。
離れたセルを合計する
合計したいセルが隣り合っていない場合は、カンマ区切りで指定します。
=SUM(A1, C1, E1)
A1・C1・E1の3つのセルだけを合計できます。
複数の範囲をまとめて合計する
離れた範囲をまとめて合計することもできます。
=SUM(A1:A5, C1:C5)
A1からA5の合計と、C1からC5の合計をまとめて出してくれます。月ごとの売上が別の列にあるときなどに使ってみてください。
オートSUMで素早く入力する
SUM関数はキーボードショートカットで一瞬で入力できます。合計を表示したいセルを選んで、次のキーを押すだけです。
| OS | ショートカット |
|---|---|
| Windows | Alt + = |
| Mac | Command + Shift + T |
Excelが自動的にデータ範囲を認識して =SUM(...) を入力してくれます。範囲が合っているか確認して、Enterキーを押せば完了です。
TIP
オートSUMの範囲認識は「空白セルの手前まで」です。途中に空白行があると、そこで範囲が途切れてしまいます。Enterを押す前に範囲を確認するクセをつけておくと安心ですよ。
SUM関数の実務活用パターン
基本がわかったところで、実際の仕事でよく使うパターンを紹介します。
月次の売上集計(列全体の合計)
データが毎月追加される売上表では、列全体を範囲にしておくと便利です。
=SUM(B:B)
B列のすべての数値が合計されます。行が増えても数式を修正する必要がありません。
NOTE
SUM関数を入力するセル自体がB列にあると循環参照になります。合計セルは別の列に配置しましょう。
経費精算表の合計(複数の費目をまとめる)
交通費・通信費・消耗品費など、複数の列に分かれた経費をまとめて合計する場合です。
=SUM(B2:D2)
B2からD2の3つの費目を横方向にまとめて合計できます。行方向だけでなく列方向の合計にも使えますよ。
別シートのデータを合計する
月別シートに分かれたデータも、シート名を指定して合計できます。
=SUM(Sheet2!A1:A10)
シート名のあとに ! を付けて、セル範囲を書きます。シート名にスペースが含まれる場合は、シングルクォーテーションで囲みましょう。
=SUM('4月売上'!B2:B50)
消費税込みの合計を一発で求める
合計に消費税10%を上乗せした金額を、1つの数式で求められます。
=SUM(B2:B10) * 1.1
合計と税込計算を1つのセルで済ませられるので便利です。端数を丸めたい場合は、ROUND関数と組み合わせましょう。
=ROUND(SUM(B2:B10) * 1.1, 0)
小計を除外して正しい合計を出す
売上表で各月の小計行がある場合、全体合計で小計を二重カウントしてしまうことがあります。小計セルを避けて、データ範囲だけを指定すると正確です。
=SUM(B2:B10, B12:B20, B22:B30)
小計行(B11, B21)を飛ばして、データ行だけを合計しています。
TIP
小計がある表では、SUBTOTAL関数を使う方法もあります。
=SUBTOTAL(9, B2:B30)と書けば、SUBTOTAL関数で算出された小計行を自動的に除外して合計してくれますよ。
SUM関数とIF関数の組み合わせ(配列数式)
「条件に合うデータだけ合計したい」場合はSUMIF関数が便利です。ただし、SUM関数とIF関数を組み合わせる方法もあります。
=SUM(IF(A2:A10="東京", B2:B10, 0))
NOTE
この数式は配列数式です。Microsoft 365ではそのままEnterで確定できます。古いバージョンでは
Ctrl+Shift+Enterで確定する必要があります。
SUM関数のよくあるエラーと対処法
SUM関数はシンプルですが、思った結果にならないケースもあります。よくあるパターンと対処法をまとめました。
| 症状 | 原因 | 対処法 |
|---|---|---|
| 合計が合わない | 数字に見えるが文字列のセルがある | ISNUMBER関数で確認し、VALUE関数で変換 |
#VALUE! エラー | 引数に直接文字列を渡している | =SUM("abc", 10) はNG。セル参照なら文字列は自動スキップされる |
| 合計結果が0 | 範囲指定ミスまたは全セルが空白 | 数式バーで範囲を確認。表示形式が「文字列」なら「標準」に変更 |
| 循環参照の警告 | SUM関数のセルが自分自身の範囲に含まれている | 合計セルを範囲外に移動する |
| 桁がずれる | 浮動小数点誤差(0.1+0.2=0.30000…04) | ROUND関数で端数を丸める |
「文字列になっている数値」の見分け方
もっとも多いトラブルが「数字なのに合計に含まれない」パターンです。以下の方法で見分けられます。
- セルを選択 → 左上に緑色の三角マークが出ていれば「文字列の数値」
=ISNUMBER(A1)でFALSEなら文字列- セルの値が左寄せなら文字列(数値は右寄せ)
対処法は3つあります。
- 緑の三角マークをクリック →「数値に変換」を選ぶ
- VALUE関数で
=VALUE(A1)と変換する - 「区切り位置」機能で一括変換する
セル範囲を間違えたときの修正方法
数式バーをクリックすると、参照範囲が色付きで表示されます。色付きの枠をドラッグすれば、範囲を視覚的に修正できますよ。
SUM関数と似た関数の違い・使い分け
Excelには合計・集計に関する関数がいくつかあります。目的に応じて使い分けましょう。
| 関数名 | 用途 | 条件指定 | 使用例 |
|---|---|---|---|
| SUM | 無条件で合計 | なし | =SUM(A1:A10) |
| SUMIF | 1条件で合計 | 1つ | =SUMIF(B:B,"東京",A:A) |
| SUMIFS | 複数条件で合計 | 複数 | =SUMIFS(A:A,B:B,"東京",C:C,">=100") |
| SUMPRODUCT | 配列の積を合計 | 配列式 | =SUMPRODUCT(A1:A10,B1:B10) |
| SUBTOTAL | フィルタ対応の合計 | 集計方法番号 | =SUBTOTAL(9,A1:A10) |
| AVERAGE | 平均値を求める | なし | =AVERAGE(A1:A10) |
| COUNT | 数値セルの個数 | なし | =COUNT(A1:A10) |
SUM関数とSUMIF/SUMIFS関数の使い分け
SUM関数は「全部足す」、SUMIF関数は「条件に合うものだけ足す」関数です。
たとえば、売上一覧から東京支店の売上だけを合計したいなら、SUMIF関数の出番です。条件なしで全体を合計するならSUM関数を使いましょう。
複数の条件を同時に指定したい場合はSUMIFS関数が使えます。「東京支店」かつ「4月」のように条件を組み合わせられますよ。
条件付きの合計についてもっと詳しく知りたい方は、SUMIF・SUMIFS・SUMPRODUCTの使い分けの比較記事もチェックしてみてください。
SUM関数とSUBTOTAL関数の使い分け
SUM関数はフィルタで非表示にした行も合計に含めます。フィルタをかけた状態で「表示中のデータだけ合計したい」場合は、SUBTOTAL関数を使いましょう。
=SUBTOTAL(9, B2:B100)
第1引数の 9 は「SUM(合計)」を意味する集計方法番号です。この数式なら、フィルタで絞り込んだ行だけの合計を出してくれます。
| 項目 | SUM | SUBTOTAL(9, 範囲) |
|---|---|---|
| フィルタ非表示行 | 含む | 除外する |
| 手動で非表示にした行 | 含む | 含む(109なら除外) |
| 小計行の二重カウント | 起きる | 自動で除外 |
フィルタをよく使う表では、SUBTOTALに置き換えておくのがおすすめです。
SUM関数とAVERAGE関数の使い分け
合計を出すならSUM関数、平均を出すならAVERAGE関数です。手動で平均を出す場合は、SUM関数とCOUNT関数を組み合わせます。
=SUM(A1:A10) / COUNT(A1:A10)
この式はAVERAGE関数と同じ結果になります。通常は素直にAVERAGE関数を使うのがおすすめですよ。
まとめ
SUM関数は、Excelでもっとも基本的で、もっとも使う頻度の高い関数です。
この記事のポイントをおさらいしておきましょう。
- SUM関数は指定した数値・セル範囲の合計を求める関数
- 引数には数値・セル参照・セル範囲を最大255個まで指定できる
- 複数の離れた範囲もカンマ区切りでまとめて合計できる
- オートSUM(
Alt+=)を使えば一瞬で入力できる - 文字列が混ざっている場合はISNUMBER関数で確認
- 条件付きの合計にはSUMIF関数やSUMIFS関数を使い分ける
- フィルタ対応の合計にはSUBTOTAL関数がおすすめ
まずはオートSUMのショートカットから試してみてください。日々の集計作業がグッと速くなりますよ。
