エクセル入門
SUMIF関数(検索条件に一致するセルの合計)

Excelの初心者向け入門解説
最終更新日:2019-08-19

数式.SUMIF関数(検索条件に一致するセルの合計)


エクセル入門 > 数式 > SUMIF関数(検索条件に一致するセルの合計)


範囲の中で、指定した条件を満たすセルの値を合計します。
または、
範囲の中で、指定した条件を満たすセルに対応する合計範囲のセルの値を合計します。

書式

SUMIF(範囲,検索条件[,合計範囲])

※[ ]で囲まれている部分は省略可能です。
合計範囲を省略した場合は、範囲のセルが合計されます。


範囲

条件によって評価するセル範囲を指定します。


検索条件

計算の対象となるセルを定義する条件を、数値、式、セル範囲、文字列、または関数で指定します。
文字列条件、または論理記号や数学記号を含む条件は、二重引用符 (") で囲む必要があります。

条件が数値の場合、二重引用符は不要です。
※ワイルドカードが使用できます。後述します。


合計範囲

範囲で指定したセル以外のセルを加算する場合は、加算する実際のセルを指定します。
合計範囲を省略すると、範囲で指定したセル(条件が適用されるセル)が加算されます。


使用例

A B
1 りんご 160
2 みかん 120
3 なし 170
4 かき 110
5 りんご 180
6 みかん 130
7 みかん 150
8 なし 190
9 かき 100
10 りんご 140

=SUMIF(A:A,"みかん",B:B)
A列が"みかん"に対応するB列の、B2,B6,B7を合計し400になります。

範囲を限定して
=SUMIF(A1:A10,"みかん",B1:B10)
これでも結果は同じですが、データの増減を考慮して、列で指定した方が良いでしょう。

=SUMIF(B:B,">=160")

B列が160以上である、B1,B3,B5,B8を合計し700になります。
二重引用符 (") が必要です。

160の数値の代わりにセル値(C1セル)を使用する場合は、
=SUMIF(B:B,">="&C1)
とします。

よくある間違いとして、
=SUMIF(B:B,">=C1")
このようにしてしまう事がありますが、
これでは">=C1"という文字列を指定した事になってしまいます。


ワイルドカード

検索条件には、半角の疑問符(?)または半角のアスタリスク(*)をワイルドカード文字として使用できます。
疑問符(?)は任意の1文字を表し、
アスタリスク(*)は任意の文字列(0個または1個以上の文字)を表します。
ワイルドカード文字ではなく、通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に、"~*" のように半角のチルダ (~) を付けます。

=SUMIF(A:A,"*ん*",B:B)
A列で"ん"の文字を含む、A1,A2,A5,A6,A7,A10に対応する、
B1,B2,B5,B6,B7,B10の合計し880になります。
"*ん*"と指定すると(○は何らかの文字を表すとして)
○ん○
ん○○
○○ん
のいずれでも対応します。

もし最期が"ん"で終わる場合のみを対象とする場合は、
"*ん"
と指定します、上表の場合は"みかん"のみ対象となります。


応用例

SUMIF関数の良くある間違い
エクセルの関数の中で最も頻繁に使われる関数と言っても過言ではないSUMIF関数ですが、間違った指定をして、合計が合わずに悩み続けて時間を浪費してしまうことあります、そういう間違いで最も多いのが、範囲と合計範囲の指定間違いです。まずは、SUMIF関数の確認 SUMIF関数 範囲の中で、指定した条件を満たすセルの値を合計します。
複数条件の合計・件数
複数条件の合計、複数条件の件数を求める関数式です。以下の表で説明します。複数条件の合計 「みかん」の「M」の合計売上は まず、2007以降ならSUMIFSが使えますので、問題はないと思います。=SUMIFS(C2:C10,A2:A10,"みかん",B2:B10,"M") SUMIFS(合計範囲,
ワイルドカードが使える関数
SUMIF COUNTIF SEARCH MATCH HLOOKUP VLOOKUP データベース関数を除く、2003までの関数です。2007以降なら、SUMIFS COUNTIFS AVERAGEIF AVERAGEIFS これらでも使えます。
数式.SUMIFS関数、COUNTIFS関数.AVERAGEIFS関数(複数条件)
SUMIFS関数は、SUMIF関数の条件が複数指定できるようになったものです。COUNTIFS関数は、COUNTIF関数の条件が複数指定できるようになったものです。範囲の中で、指定した条件を満たすセルの個数を数えます。


ワークシート関数一覧

Excelワークシート関数の一覧と解説です、詳細解説ページへのリンクもあります。Excel2007までの関数です。2010以降追加の関数一覧 ワークシート関数の一覧(2010以降) 引数、関数構文については Excelシートの複雑な計算式を解析するVBAの関数構文 文字列関数…27 日付と時刻の関数…21 情報関数…17 論理関数…7 検索/行列関数…1…



同じテーマ「エクセル入門」の記事

SUM関数(引数を合計)
IF関数(条件を満たしているかどうかを判定)
関数のネスト
SUMIF関数(検索条件に一致するセルの合計)
COUNT関数(セル値が数値の個数)
COUNTA関数(空白以外のセルの個数)
COUNTIF関数(検索条件に一致するセルの個数)
VLOOKUP関数(範囲の左端列で値検索し対応セル値)
HLOOKUP関数(範囲の上端行で値検索し対応セル値)
AND関数(すべての引数がTRUEのときにTRUE)
OR関数(いずれかの引数がTRUEのときにTRUE)


新着記事NEW ・・・新着記事一覧を見る

VBAにおける変数のメモリアドレスについて|VBA技術解説(11月8日)
空文字列の扱い方と処理速度について(""とvbNullString)|VBA技術解説(1月7日)
Errオブジェクトとユーザー定義エラー|VBA入門(11月5日)
シングルクォートの削除とコピー(PrefixCharacter)|VBA技術解説(11月4日)
ユーザー定義型の制限とクラスとの使い分け|VBA技術解説(11月3日)
クリップボードに2次元配列を作成してシートに貼り付ける|VBA技術解説(11月1日)
VBAクラスを使ったイベント作成(Event,RaiseEvent,WithEvents)|VBA技術解説(10月31日)
VBAクラスのAttributeについて(既定メンバーとFor Each)|VBA技術解説(10月19日)
VBAの用語について:ステートメントとは|VBA技術解説(10月16日)
VBAのマルチステートメント(複数のステートメントを同じ行に)|VBA技術解説(10月14日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.変数宣言のDimとデータ型|ExcelマクロVBA入門
6.繰り返し処理(For Next)|ExcelマクロVBA入門
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.ひらがな⇔カタカナの変換|エクセル基本操作
9.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説
10.セルに文字を入れるとは(Range,Value)|VBA入門



  • >
  • >
  • >
  • SUMIF関数(検索条件に一致するセルの合計)

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。




    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
    本文下部へ