売上や経費の集計をしていると、「取引先も指定したい」「担当者でも絞りたい」「さらに期間も区切りたい」といった“条件が複数ある合計”が必ず発生します。ところが、SUMIFのまま頑張ろうとすると条件が増えた瞬間に行き詰まり、SUMIFSに切り替えても引数の順番や日付条件の書き方でつまずきやすいのが実情です。
本記事では、sumifs関数とは何かを基礎から整理し、実務で頻出する「取引先×担当×期間」などの定番パターンをそのまま使える形で解説いたします。さらに、#VALUE!や合計ズレが起きる典型原因をチェックリストで洗い出し、なぜ間違うのか、どう直すのかまで丁寧にまとめます。読み終えたころには、複数条件の集計を自分の表に当てはめて、迷わず使い回せる状態を目指せます。
※本コンテンツは「記事制作ポリシー」に基づき、正確かつ信頼性の高い情報提供を心がけております。万が一、内容に誤りや誤解を招く表現がございましたら、お手数ですが「お問い合わせ」よりご一報ください。速やかに確認・修正いたします。
sumifs関数とは何をする関数か
Excelで売上や経費、在庫数などを集計していると、「条件に合うものだけ合計したい」という場面が必ず出てきます。しかも実務では、条件が1つで済むことは少なく、「取引先も指定したいし、担当者も指定したいし、期間も絞りたい」といった複数条件が当たり前です。そこで役立つのが、SUMIFS関数です。
sumifs関数でできることと向いている場面
SUMIFS関数は、複数の条件に一致するデータだけを対象にして合計する関数です。イメージとしては「表の行を条件でふるいにかけ、残った行の数値列を合計する」と考えると分かりやすいです。
たとえば、次のような集計に向いています。
取引先が「A社」かつ担当が「田中」の売上合計
店舗が「新宿店」かつ商品カテゴリが「飲料」の数量合計
日付が「4月1日〜4月30日」かつ科目が「交通費」の金額合計
ポイントは「条件が複数であること」です。条件が1つならSUMIFでも対応できますが、条件が2つ以上になるとSUMIFSが主役になります。
また、SUMIFSが向く場面には共通点があります。
集計の切り口が固定されている(毎月同じ条件で集計する、同じフォーマットの報告書を作る)
集計表のセルに数式として埋め込みたい(集計結果を別シートの一覧表に並べたい)
データが増えても自動で合計が更新されてほしい(範囲設定やテーブル化と相性が良い)
反対に、いろいろな切り口で自由に分析したい場合は、ピボットテーブルのほうが速いこともあります。SUMIFSは「狙った条件で狙った合計を返す」ことに強い関数、と位置づけると迷いにくいです。
SUMIF関数との違いが混乱の原因になりやすい理由
SUMIFSを学ぶときに、まず混乱しやすいのがSUMIFとの違いです。名前が似ているだけでなく、引数(指定する順序)が異なるため、覚え方を間違えると手が止まりやすくなります。
まず役割の違いは次のとおりです。
SUMIF:条件が1つの合計
SUMIFS:条件が複数の合計(条件をいくつでも追加できる)
ここまでは分かりやすいのですが、次がつまずきポイントです。
SUMIFとSUMIFSの比較表
| 項目 | SUMIF | SUMIFS |
|---|---|---|
| 目的 | 1条件で合計 | 複数条件で合計 |
| 条件の数 | 1つ | 2つ以上(必要なだけ追加) |
| 引数の順番 | 条件範囲 → 条件 → 合計範囲 | 合計対象範囲 → 条件範囲1 → 条件1 → 条件範囲2 → 条件2… |
| よくあるミス | 合計範囲の省略/指定ミス | 合計範囲と条件範囲のサイズ不一致、条件の書き方 |
| 向いている用途 | 単純な集計 | 実務の集計(期間×取引先×担当など) |
特に「SUMIFSは最初に合計対象範囲を置く」という点は、慣れるまで意外と間違えます。
SUMIFの感覚で「条件範囲から書き始める」と、引数がずれてエラーになったり、結果が合わなくなったりします。初学者ほどここで詰まりやすいので、「SUMIFSはSum Rangeが先頭」とセットで覚えるのが近道です。
sumifs関数の書き方と引数の意味
SUMIFSは、仕組みが分かると「条件を増やしていくだけ」の関数です。逆に言えば、仕組みが曖昧なまま例だけを暗記すると、少し条件が変わった瞬間に対応できなくなります。ここでは、構文と引数の意味を確実に押さえます。
基本構文と引数の対応関係
ExcelのSUMIFS関数は、基本的に次の形です。
=SUMIFS(合計対象範囲, 条件範囲1, 条件1, [条件範囲2, 条件2] …)
引数を人間の言葉に直すと、こうなります。
合計対象範囲:合計したい数値が並ぶ範囲(売上、数量、金額など)
条件範囲1:条件で判定したい範囲(取引先、日付、担当、店舗など)
条件1:条件範囲1に対する判定(”A社”、”>=2025/04/01″など)
条件範囲2・条件2以降:条件を増やしたい分だけ、範囲と条件をペアで追加
重要なのは、条件範囲と条件が必ずペアで増えることです。
「条件だけ追加する」ことはできません。必ず「どの列(範囲)を見て、何と一致させるのか」をセットで追加します。
また、合計対象範囲と条件範囲は、原則として同じサイズ(同じ行数・列数)である必要があります。たとえば、売上金額がD2:D100なら、条件範囲もB2:B100、C2:C100のように揃えます。ここがずれるとエラーの原因になります。
条件はANDとして評価される
SUMIFSは、指定した条件を「すべて満たす行だけ合計する」仕組みです。つまり、基本はAND条件です。
取引先がA社 かつ
担当が田中 かつ
日付が4月の範囲
この3つを同時に満たす行だけが合計対象になります。
そのため、条件を増やすほど対象行は絞られ、結果は小さくなる傾向があります。もし「結果が0」「思ったより少ない」場合は、次のどれかが起きています。
条件が厳しすぎて、該当行が実際に存在しない
条件が合っているつもりでも、データの表記ゆれやスペースで一致していない
日付や数値が文字列になっていて、比較が想定どおりに効いていない
AND条件であることを理解していると、切り分けが楽になります。たとえば条件が3つなら、一度2条件に減らしてみて結果を確認し、どの条件で落ちるかを特定できます。
Excelとスプレッドシートでここが違う
SUMIFSはGoogleスプレッドシートにもありますが、実務上は次の点で「同じ名前でも使い勝手が違う」と感じることがあります。
列全体参照の文化:ExcelでもD:Dのような参照は可能ですが、データ量が多いと計算負荷が上がります。スプレッドシートでも同様で、巨大データでは動作が重くなる原因になります。
データ型の揺れ:スプレッドシートは外部取り込みやフォーム連携などが多く、日付や数値が文字列として入っているケースが起きやすいです。ExcelでもCSV取り込みで起こりますが、環境によって頻度が変わります。
関数の周辺仕様:同じSUMIFSでも、参照や自動拡張の扱い(例えばテーブル機能の有無、列参照の書き方)は異なります。
この記事ではExcelを軸に説明しますが、スプレッドシートでも考え方は同じです。動かない場合は「データ型」「範囲指定」「条件の書き方」を最優先で疑うと、原因にたどり着きやすくなります。
sumifs関数の使用例で覚える定番パターン
SUMIFSは「型」を覚えると一気に楽になります。ここでは、現場でよく使う定番パターンを、コピペしやすい形で紹介します。
前提として、次のような明細表を想定します。
A列:日付
B列:取引先
C列:担当
D列:売上金額
E列:摘要(メモや品名など)
(範囲は例として2行目から100行目までがデータ、とします)
取引先と月で売上を合計する
まず最も多いのが「取引先×担当」など、複数のカテゴリ条件で合計するケースです。
例:取引先がA社、担当が田中の売上合計=SUMIFS($D$2:$D$100, $B$2:$B$100, "A社", $C$2:$C$100, "田中")
集計表を作るなら、条件はセル参照にするのが鉄則です。たとえば、
F2:取引先(例:A社)
G2:担当(例:田中)
と置いた場合はこうなります。
=SUMIFS($D$2:$D$100, $B$2:$B$100, $F2, $C$2:$C$100, $G2)
この形にしておくと、F列やG列の条件を変えるだけで合計が変わるため、集計表を横展開しやすくなります。
よくある注意点
条件セルに余計なスペースが入っていると一致しません(見た目で分かりにくい)
条件が完全一致であることを忘れがちです(「(株)」の有無など表記ゆれに弱い)
期間条件で合計する(以上・未満の組み合わせ)
次に頻出なのが、日付で絞る集計です。月次、週次、締め日ベースなど、期間条件はあらゆる集計に登場します。
期間条件は基本的に「開始日以上」かつ「終了日以下」の2条件で作ります。
H2:開始日(例:2025/04/01)
I2:終了日(例:2025/04/30)
例:4月分の売上合計=SUMIFS($D$2:$D$100, $A$2:$A$100, ">="&$H2, $A$2:$A$100, "<="&$I2)
ここで大事なのが、比較演算子(>= や <=)とセル参照を 文字列結合 することです。
正:
">="&$H2誤:
">=$H2"(多くの場合、意図どおりに解釈されません)
境界の考え方(時刻が混ざる場合)
日付に時刻が入るデータ(例:2025/04/30 18:25)だと、終了日を「2025/04/30」にした場合、<= 2025/04/30 では拾えないことがあります。
その場合は、次のように「終了日は翌日未満」で条件を作ると安全です。
開始日以上:
">="&開始日終了日翌日未満:
"<"& (終了日+1)
この考え方は、締め集計で抜け漏れを防ぐために非常に有効です。
文字列を含む条件とワイルドカード
「摘要に○○が含まれる行だけ合計したい」「品名に東京が入っているものを合計したい」といった、部分一致の集計もよくあります。このときに使うのがワイルドカードです。
*:任意の文字列(0文字以上)?:任意の1文字
例:摘要に「交通」を含む行の合計=SUMIFS($D$2:$D$100, $E$2:$E$100, "*交通*")
例:品名が「A-001」「A-002」など、先頭がA-のもの=SUMIFS($D$2:$D$100, $E$2:$E$100, "A-*")
例:品番が「AB1」「AB2」など、末尾が1文字だけ違う=SUMIFS($D$2:$D$100, $E$2:$E$100, "AB?")
ワイルドカードは便利ですが、対象が広がりすぎると意図しない合計になることがあります。特に「交通」は「交通費」「交通」以外にも、メモの一部に交通が入っていれば拾います。必要なら、データを整備して科目列を用意するほうが堅実です。
OR条件で合計したいときの考え方
SUMIFSは基本がAND条件なので、「A社またはB社」のようなOR条件はそのままでは書きにくいです。現場では、次の2択が定番です。
方法1:SUMIFSを足し算する(シンプルで分かりやすい)
例:取引先がA社またはB社の売上合計=SUMIFS($D$2:$D$100, $B$2:$B$100, "A社") + SUMIFS($D$2:$D$100, $B$2:$B$100, "B社")
条件が2〜3個程度なら、この方法が最も分かりやすいです。後から見ても意図が明快です。
方法2:フラグ列を作り、フラグで集計する(拡張に強い)
条件が増えるほど、足し算は式が長くなって管理しづらくなります。そこで、明細表に「対象かどうか」を判定するフラグ列(例:F列)を作ります。
F列:対象フラグ(A社またはB社なら1、その他は0)
フラグの作り方はいくつかありますが、概念としては「条件に合うなら1」を作ります。そうするとSUMIFSは次のように書けます。
=SUMIFS($D$2:$D$100, $F$2:$F$100, 1)
フラグ列は、他の条件(期間や担当)と組み合わせても式が読みやすいのが利点です。集計の種類が増える職場ほど、フラグ設計が効いてきます。
sumifs関数で合計が合わないときの原因チェック
SUMIFSで困るのは「エラーが出る」場合と、「エラーは出ないけど合計が合わない」場合の2つです。ここでは、よくある原因を“順番に潰せる”ように整理します。迷ったら上から順に確認してください。
#VALUE!が出るときに最初に見るポイント
SUMIFSで #VALUE! が出るとき、最優先で疑うべきは 範囲サイズの不一致 です。
合計対象範囲と条件範囲は、同じ行数・同じ列数である必要があります。
たとえば、次のようなズレがあるとエラーになりやすいです。
合計対象範囲:D2:D100
条件範囲:B2:B99(1行短い)
条件範囲:C3:C101(開始行がずれている)
また、列全体参照と部分参照が混ざっているのも危険です。
合計対象範囲:D:D
条件範囲:B2:B100
この状態で必ずエラーになるとは限りませんが、予期しない挙動や重さにつながりやすくなります。可能な限り、揃った範囲で指定するのが安全です。
#VALUE!診断チェックリスト
合計対象範囲と条件範囲の開始行は同じか
合計対象範囲と条件範囲の終了行は同じか
列全体参照と部分参照が混在していないか
どこかの条件範囲だけ、列が1列ではなく複数列になっていないか
結合セルが範囲内に混ざっていないか(予期せぬズレの原因になります)
このチェックで多くの#VALUE!は解消できます。
条件のデータ型がズレているケース
エラーは出ないのに合計が合わないとき、次に疑うのが データ型の不一致 です。見た目が同じでも、内部的に「数値」「日付」「文字列」が混在していると一致判定が崩れます。
よくあるパターンは次のとおりです。
数値が文字列になっている
見た目は「1000」だが、実際は文字列 “1000”
比較条件(>=1000など)で引っかかったり、別システムからの取り込みで起こりやすい
対策としては、データを数値に変換する(形式の統一、値の貼り付け直し、不要な記号除去など)が有効です。
日付が文字列になっている
日付条件は特にトラブルが多いです。見た目が「2025/04/01」でも、文字列として入っていると「>=」比較が想定どおりに動きません。
期間で絞ったのに0になる
一部の行だけ拾わない
こういうときは、日付列を見直します。Excelであれば、セルの表示形式だけでなく「本当に日付として認識されているか」を確認します。取り込みデータの場合、日付区切りが異なる(YYYY-MM-DDなど)だけで文字列になることがあります。
条件側(条件セル)の型が違う
データ列が日付でも、条件セルが文字列だと噛み合いません。
期間条件で ">="&開始日セル としているのに合わない場合、条件セル側が文字列日付である可能性もあります。条件セルの入力を手打ちしている場合は特に起こりやすいので、データ列と同じ形式に統一してください。
空白や余計なスペースで一致しないケース
「完全一致」で比較する条件(取引先名、担当名、店舗名など)は、スペースや表記ゆれに非常に弱いです。次のようなズレがあると、見た目は同じでも一致しません。
末尾に半角スペースが入っている
全角スペースが混ざっている
全角/半角の記号が混在している(ハイフン、括弧、数字など)
「株式会社」の有無、「(株)」表記などが揺れている
合計ズレ診断チェックリスト(文字列条件)
条件セルの前後にスペースが入っていないか
データ側に余計なスペースや改行が混ざっていないか
表記ゆれ((株)/株式会社、全角英数など)がないか
ワイルドカードで広く拾いすぎていないか(*を使った条件)
条件が「含む」ではなく「完全一致」になっていないか(意図と一致しているか)
表記ゆれが常態化している場合は、関数だけで無理に吸収するよりも、マスター化(取引先コードなど)や入力規則の導入でデータ品質を上げるほうが、長期的にミスが減ります。
sumifs関数を長く使うための実践テクニック
SUMIFSは便利ですが、使い方次第で「誰も触れない複雑なシート」になったり、「月末にだけ壊れる集計」になったりもします。ここでは、長く安定して使うための設計のコツをまとめます。
集計範囲はテーブル化でズレを防ぐ
SUMIFSのトラブルで最も多いのは、やはり範囲ズレです。データが増えるたびに範囲を手で伸ばす運用は、必ずどこかで事故が起きます。
そこで有効なのが、Excelのテーブル機能です。
テーブル化すると、行が増えても列参照が自動で追随し、範囲ズレが起きにくくなります。見た目も整い、フィルターや集計もしやすくなるため、明細表を扱うなら大きなメリットがあります。
テーブル名が Table1、列名が「売上金額」「取引先」「担当」だとすると、式は次のように書けます。
=SUMIFS(Table1[売上金額], Table1[取引先], $F2, Table1[担当], $G2)
列参照は「どの列を見ているか」が一目で分かるので、引き継ぎの場面でも強いです。
条件セルを分離して数式を読みやすくする
SUMIFSの式が長くなる一番の原因は、条件が増えることです。条件が増えるのは自然なことなので、増えても破綻しない形にするのが重要です。
おすすめは、条件をすべてセルに置いて、数式側は参照中心にする方法です。
例:
F2:取引先
G2:担当
H2:開始日
I2:終了日
J2:キーワード(摘要に含む文字など)
この場合、売上合計はこう書けます。
=SUMIFS($D$2:$D$100, $B$2:$B$100, $F2, $C$2:$C$100, $G2, $A$2:$A$100, ">="&$H2, $A$2:$A$100, "<="&$I2, $E$2:$E$100, "*"&$J2&"*")
式は長いですが、条件がセルに分離されているため、後から見ても「どこを変えればいいか」が明確です。
また、条件セルに入力規則(プルダウン)を入れておけば、表記ゆれも減らせます。
似た集計はピボットやPower Queryとの使い分け
SUMIFSは「指定した条件で、指定した合計を返す」ことに特化しています。これは強みですが、状況によっては他の方法のほうが効率的です。
SUMIFSが向いているケース
報告書のフォーマットが決まっている(毎月同じ形)
集計結果を1セルずつ、表形式で並べたい
条件をセルで変えて、結果を即座に更新したい
ピボットテーブルが向いているケース
切り口を色々変えて分析したい
行・列・フィルターを入れ替えて、全体像を掴みたい
データ量が多く、関数が重くなってきた
Power Queryが向いているケース
複数ファイルの取り込みや整形が必要
文字列の整形や列の分割など、前処理が毎回必要
「データを整える→集計する」までを手順化したい
現場では、SUMIFSだけで頑張りすぎてシートが複雑になることがあります。目的が「固定の集計」なのか「分析」なのかで手段を選ぶと、作業が楽になり、ミスも減ります。
sumifs関数とはに関するよくある質問
条件は何個まで指定できるか
SUMIFSは、条件範囲と条件のペアを必要なだけ追加できます。実務上の注意点は「条件数が増えるほど、原因切り分けが難しくなる」ことです。
条件が増えてきたら、次の工夫をすると管理しやすくなります。
条件はセルに分離して、数式の可読性を保つ
OR条件が多い場合はフラグ列を導入する
条件が複雑化するなら、ピボットやPower Queryの採用も検討する
「何個まで」よりも、「増えても壊れない設計」に寄せることが大切です。
条件にセル参照と文字列を混ぜる書き方は
比較条件(>= や <=)やワイルドカード条件では、文字列とセル参照を結合する書き方が基本になります。よく使うテンプレをまとめます。
条件式テンプレ表(そのまま使える型)
| やりたいこと | 条件の例 | 書き方(例) |
|---|---|---|
| 以上(>=)で絞る | 1000以上 | ">="&条件セル |
| 以下(<=)で絞る | 500以下 | "<="&条件セル |
| 期間で絞る | 開始日〜終了日 | ">="&開始日 と "<="&終了日 |
| 期間で漏れなく絞る | 開始日〜終了日(時刻あり) | ">="&開始日 と "<"&終了日+1 |
| 文字列を含む | “交通”を含む | "*交通*" または "*"&条件セル&"*" |
| 前方一致 | “A-”で始まる | "A-*" |
| 後方一致 | “-JP”で終わる | "*-JP" |
| 1文字だけ違う | AB1/AB2… | "AB?" |
セル参照を混ぜるときは、「条件が文字列として解釈される必要がある」場面が多い、と覚えておくと良いです。比較演算子やワイルドカードは文字列なので、セル参照と結合して1つの条件文字列に仕立てます。
SUMIFSでエラーになるのにSUMIFだと動くのはなぜ
よくある理由は次の3つです。
範囲サイズの扱いの違いで、SUMIFSだけが厳密にエラーになる
SUMIFSは合計対象範囲と条件範囲のサイズが揃っていないとエラーになりやすいです。SUMIFは合計範囲を省略できるため、同じ“つもり”の指定でも表面化しないことがあります。引数順をSUMIFの感覚で書いてしまっている
SUMIFは「条件範囲→条件→合計範囲」ですが、SUMIFSは「合計対象範囲→条件範囲→条件…」です。順番を誤ると、思わぬ範囲が合計対象になったり、エラーになったりします。条件が増えたことで、データ型の不一致が露呈する
条件が1つのときはたまたま一致していたものが、条件が2つ3つと増えると一致しない行が増え、結果が0や小さい値になって気づくケースがあります。特に日付や文字列の表記ゆれは、条件が増えるほど影響が大きくなります。