スプレッドシートのSUM関数の使い方|合計を求める基本から実務活用まで

スポンサーリンク

「セルの合計を出したいけど、足し算を手入力するのは面倒…」そんな経験、ありませんか?

GoogleスプレッドシートのSUM関数を使えば、指定した範囲の数値を一発で合計できます。文字列や空白セルは自動でスキップしてくれるので、データが多少バラバラでも安心です。

この記事では、スプレッドシートのSUM関数の基本構文から実務でよく使うパターン、エラー対処法までを図解で解説します。SUMIF・AVERAGEとの使い分けもまとめているので、ぜひ参考にしてくださいね。

スプレッドシートのSUM関数とは?

SUM関数(読み方: サム関数)は、指定した数値やセル範囲を合計する関数です。「SUM」は英語の「Sum(合計)」がそのまま名前になっています。

Googleスプレッドシートの中で、もっとも使用頻度が高い関数のひとつです。売上の集計、経費の合計、在庫数の合算など、事務作業のあらゆる場面で活躍します。

SUM関数にできることをまとめると、次のとおりです。

  • 指定したセル範囲の数値を合計する
  • 複数の離れたセル範囲をまとめて合計する
  • 数値を直接引数に渡して計算する
  • 文字列や空白セルは自動的にスキップする

「数値を全部足してね」とスプレッドシートにお願いする関数、というイメージで覚えておきましょう。

NOTE

SUM関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性もほぼ完全なので、ファイルのやり取りでも安心ですよ。

スプレッドシートのSUM関数の書き方(構文と引数)

基本構文

=SUM(値1, [値2], ...)

カッコの中に、合計したい数値やセル範囲を指定します。

引数の説明

引数必須/任意説明
値1必須合計したい最初の数値、セル参照、またはセル範囲
値2, …任意追加で合計したい数値やセル範囲(最大30個まで)

引数が2つ以上ある場合は、カンマ( , )で区切ります。

引数に指定できるものは、大きく3種類あります。

  • 数値を直接入力: =SUM(10, 20, 30) → 結果は60
  • セル参照: =SUM(A1, B1, C1) → 各セルの値を合計
  • セル範囲: =SUM(A1:A10) → A1からA10までを合計

これらを組み合わせて書くこともできますよ。=SUM(A1:A5, C1, 100) のように、範囲・セル参照・数値を混ぜて書けるのがポイントです。

TIP

Excelでは引数を最大255個まで指定できますが、Googleスプレッドシートでは最大30個です。ただし、1つの引数にセル範囲を指定できるので、実務で困ることはほとんどありません。

スプレッドシートのSUM関数の基本的な使い方

ここからは、実際にSUM関数を入力する手順を見ていきましょう。

たとえば次のような月次売上データがあるとします。

01 data sample table

セル範囲を合計する(もっとも基本のパターン)

A1からA5に入った売上データの合計を出すには、次のように入力します。

=SUM(A1:A5)

!_images/spreadsheet-sum-function/02_formula_sum-basic.png

A1:A5の「:(コロン)」は「A1からA5まで」という意味です。セルを1つずつ指定する必要がないので、データが多いときに便利ですよ。

03 result sum basic

離れたセルを合計する

合計したいセルが隣り合っていない場合は、カンマ区切りで指定します。

=SUM(A1, C1, E1)

A1・C1・E1の3つのセルだけを合計できます。

TIP

数式入力中に Ctrl キー(Macは Cmd キー)を押しながらセルを順番にクリックすると、自動でカンマ区切りの形式で引数が入力されます。手入力よりラクですよ。

複数の範囲をまとめて合計する

離れた範囲をまとめて合計することもできます。

=SUM(A1:A5, C1:C5)

A1からA5の合計と、C1からC5の合計を一発で出してくれます。月ごとの売上が別の列にあるときなどに、ぜひ使ってみてください。

関数メニューから入力する

Googleスプレッドシートでは、ツールバーの関数ボタンからSUM関数を素早く入力できます。

  1. 合計を表示したいセルを選択する
  2. ツールバー右端の 「関数」ボタン(Σ・シグマ記号) をクリックする
  3. メニューから 「SUM」 を選択する
  4. 自動的に範囲が入力されるので、正しいか確認してEnterを押す

TIP

キーボード入力のほうが速いです。セルに =su と入力すると候補にSUMが表示されるので、Tabキーで確定してくださいね。範囲はドラッグまたは矢印キーで選択できます。

スプレッドシートのSUM関数の実務活用パターン

基本がわかったところで、仕事でよく使うパターンを5つ紹介します。

パターン1: 月次の売上集計(列全体の合計)

データが毎月追加される売上表では、列全体を範囲にしておくと便利です。

=SUM(B:B)

B列のすべての数値が合計されます。行が増えても数式を修正する必要がありません。

NOTE

SUM関数を入力するセル自体がB列にあると、循環参照エラーになります。合計セルは別の列に配置しましょう。

パターン2: 経費精算表の合計(横方向の合計)

交通費・通信費・消耗品費など、複数の列に分かれた経費を一括で合計する場合です。

=SUM(B2:D2)

B2からD2の3つの費目を、横方向にまとめて合計できます。SUM関数は縦方向だけでなく横方向にも使えますよ。

パターン3: 別シートのデータを合計する

月別シートに分かれたデータも、シート名を指定して合計できます。

=SUM('4月売上'!B2:B50)

シート名のあとに ! を付けて、セル範囲を書きます。シート名にスペースや日本語、特殊文字が含まれる場合は、シングルクォーテーションで囲んでおくと安全です。

複数のシートを同時に参照することもできます。

=SUM('4月売上'!B2:B50, '5月売上'!B2:B50)

TIP

別のスプレッドシートファイルから合計したい場合は、IMPORTRANGE関数と組み合わせます。=SUM(IMPORTRANGE("URL", "Sheet1!A1:A10")) のように書きましょう。

パターン4: 消費税込みの合計を一発で求める

合計に消費税10%を上乗せした金額を、1つの数式で求められます。

=SUM(B2:B10) * 1.1

端数を丸めたい場合は、ROUND関数と組み合わせましょう。

=ROUND(SUM(B2:B10) * 1.1, 0)

ROUND関数の2つ目の引数 0 は「小数点以下を四捨五入して整数にする」という意味です。請求書の合計金額にそのまま使えますよ。

パターン5: 小計を除外して正しい合計を出す

売上表で各月の小計行がある場合、全体合計で小計を二重カウントしてしまうことがあります。小計セルを避けて指定すると正確です。

=SUM(B2:B10, B12:B20, B22:B30)

小計行(B11, B21)を飛ばして、データ行だけを合計しています。

TIP

表に小計を入れる予定なら、SUM関数より スプレッドシートのSUBTOTAL関数の使い方 が便利です。SUBTOTAL関数は「合計の合計」を自動で除外してくれるので、小計と総合計が混在する集計表に向いていますよ。

スプレッドシートのSUM関数でよくあるエラーと対処法

SUM関数はシンプルですが、思った結果にならないケースもあります。よくあるパターンと対処法をまとめました。

症状原因対処法
合計が合わない数字に見えるが文字列のセルがあるセルの表示形式を「数値」に変更し、VALUE関数で変換
#VALUE! エラー引数に直接文字列を渡している=SUM("abc", 10) はNG。セル参照なら文字列は自動スキップ
#NAME? エラー関数名のスペルミス(例: =SU(...)スペルを SUM に修正
合計結果が0範囲指定ミスまたは全セルが空白数式バーで範囲を確認。表示形式が「書式なしテキスト」なら「数値」に変更
循環参照の警告SUM関数のセルが自分自身の範囲に含まれている合計セルを範囲外に移動する
桁がずれる浮動小数点誤差(0.1+0.2=0.300…04)ROUND関数で端数を丸める
#REF! エラー参照先のシートやセルが削除された数式内のシート名・セル範囲を確認して修正

「文字列になっている数値」の見分け方

もっとも多いトラブルが「数字なのに合計に含まれない」パターンです。次の3つのサインで見分けられます。

  • セルの値が 左寄せ で表示されている(数値なら標準で右寄せ)
  • セル左上に 緑色の三角マーク が付いている(CSVインポート由来でよく出ます)
  • =ISNUMBER(A1)(セルが数値かを判定する関数)で FALSE が返る

対処法は3つあります。

  1. セルの表示形式を「数値」に変更してから値を再入力する
  2. VALUE関数(文字列を数値に変換する関数)で =VALUE(A1) と変換する
  3. 「データ」→「データクリーンアップ」→「数値に変換」でまとめて変換する

TIP

CSVや外部システムからコピペした列に多発します。先に列単位で表示形式を「数値」に揃えてから、データクリーンアップを実行するのが手早くて安心ですよ。

フィルタや非表示の行も合計に含まれてしまうとき

SUM関数は、フィルタで非表示になっている行も合計に含めます。表示されている行だけを合計したい場合は、SUBTOTAL関数(フィルタ・小計を考慮する関数)を使いましょう。

=SUBTOTAL(9, B2:B100)

最初の引数 9 が「SUM相当」を表します。フィルタで隠れた行は除外して合計してくれますよ。詳しくは スプレッドシートのSUBTOTAL関数の使い方 を参考にしてください。

似た関数との違い・使い分け

スプレッドシートには合計・集計に関する関数がいくつかあります。目的に応じて使い分けましょう。

関数名用途条件指定使用例
SUM無条件で合計なし=SUM(A1:A10)
SUMIF1条件で合計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関数の使い分け

SUM関数は「全部足す」、SUMIF関数は「条件に合うものだけ足す」関数です。

たとえば、売上一覧から 東京支店の売上だけ を合計したいなら、SUMIF関数の出番です。条件なしで全体を合計するなら、SUM関数を使いましょう。

複数の条件を同時に指定したい場合は、SUMIFS関数が使えます。「東京支店かつ4月」のように、条件を組み合わせて絞り込みできますよ。

データを条件で絞り込んでから合計したい場合は、スプレッドシートのFILTER関数の使い方 と組み合わせる方法もあります。=SUM(FILTER(A:A, B:B="東京")) のように書けば、SUMIFと同じ結果が得られますよ。

SUM関数とAVERAGE関数の使い分け

合計を出すならSUM関数、平均を出すならAVERAGE関数です。手動で平均を出す場合は、SUM関数とCOUNT関数を組み合わせます。

=SUM(A1:A10) / COUNT(A1:A10)

この式はAVERAGE関数と同じ結果になります。ただし通常は素直にAVERAGE関数を使うのがおすすめですよ。

SUM関数とSUMPRODUCT関数の使い分け

「単価×数量」のような 掛け算した結果を合計したい ときは、SUMPRODUCT関数が便利です。

=SUMPRODUCT(A2:A10, B2:B10)

A列に単価、B列に数量があるとき、各行の単価×数量を計算してすべて合計してくれます。請求書や売上明細の小計合計を一発で出せますよ。

Excelとの違い

SUM関数の基本的な動作はExcelと同じです。ただし、いくつか細かい違いがあります。

項目GoogleスプレッドシートExcel
引数の上限最大30個最大255個
オートSUMツールバーのΣボタンからAlt + Shift + = ショートカット
配列数式の確定そのままEnterでOK古いバージョンでは Ctrl+Shift+Enter
列全体の合計=SUM(B:B) で同じ=SUM(B:B) で同じ
循環参照の検出自動検出+エラー表示自動検出+警告ダイアログ

引数の上限数が異なりますが、セル範囲を使えば30個でも十分間に合います。基本的にはExcelと同じ感覚で使えますよ。

まとめ

スプレッドシートのSUM関数は、もっとも基本的で使用頻度の高い関数のひとつです。

この記事のポイントをおさらいしておきましょう。

  • SUM関数は指定した数値・セル範囲の合計を求める関数
  • 引数には数値・セル参照・セル範囲を最大30個まで指定できる
  • 複数の離れた範囲もカンマ区切りでまとめて合計できる
  • ツールバーの関数ボタン(Σ)からSUMを選べば素早く入力できる
  • 文字列が混ざっている場合はVALUE関数や「データクリーンアップ」で数値に変換する
  • 条件付きの合計にはSUMIF・SUMIFS関数、フィルタ考慮にはSUBTOTAL関数を使い分ける

まずは基本の =SUM(範囲) から試してみてください。日々の集計作業がグッと速くなりますよ。


この記事で紹介した関数・関連記事

タイトルとURLをコピーしました