エクセル入門 | 数式.SUMIFS関数、COUNTIFS関数.AVERAGEIFS関数(複数条件) | Excelの初心者向け入門解説



最終更新日:2016-08-30

数式.SUMIFS関数、COUNTIFS関数.AVERAGEIFS関数(複数条件)


エクセル入門 > 数式 > 数式.SUMIFS関数、COUNTIFS関数.AVERAGEIFS関数(複数条件)

SUMIFS関数は、SUMIF関数の条件が複数指定できるようになったものです。
COUNTIFS関数は、COUNTIF関数の条件が複数指定できるようになったものです。

AVERAGEIFS関数は、AVERAGEIF関数の条件が複数指定できるようになったものです。


書式

SUMIFS(合計範囲, 条件範囲1, 条件1, [条件範囲2, 条件2], ...)
COUNTIFS(条件範囲1, 検索条件1, [条件範囲2, 検索条件2]…)
AVERAGEIFS(平均範囲, 条件範囲1, 条件1, [条件範囲2, 条件2], ...)


注意
SUMIFSとSUMIF、AVERAGEIFSとAVERAGE とでは、引数の指定順序が異なります。
合計範囲・平均範囲は SUMIF・AVERAGEIF では第3引数であるのに対し、SUMIFS・AVERAGEIFSでは第1引数になります。

合計範囲・平均範囲

合計・平均するセル範囲を指定します。
COUNTIFSには、この引数はありません。

条件範囲1

対応する条件による評価の対象となる最初の範囲を指定します。
条件 1 必須です。
条件範囲 2,条件 2, ... オプションです。追加の範囲と対応する条件です。最大 127 組の範囲/条件のペアを指定できます。

条件1

加算・平均の対象となる条件範囲1のセルを定義する条件を数値、式、セル参照、または文字列で指定します。
たとえば、検索条件は 25、">25"、B4、"Excel" のようになります。
式および文字列を指定する場合は半角の二重引用符 (") で囲む必要があります。

条件範囲2、条件2

オプションです。
追加の範囲と対応する条件です。
最大 127 組の範囲/条件のペアを指定できます。


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


使用例

以下の表で、合計金額、件数、平均金額を求めます。

A B C D E F G H
1 日付 金額     第二営業部
2 第一営業部 営業1課 2016/8/12 16393     営業2課
3 第一営業部 営業2課 2016/8/12 18847     合計金額  
4 第一営業部 営業3課 2016/8/12 24840     件数  
5 第一営業部 営業1課 2016/8/13 14704     平均金額  
6 第一営業部 営業2課 2016/8/13 26148        
7 第一営業部 営業3課 2016/8/13 12772        
8 第一営業部 営業1課 2016/8/14 12859        
9 第一営業部 営業2課 2016/8/14 19161        
10 第一営業部 営業3課 2016/8/14 23670        
11 第一営業部 営業1課 2016/8/15 27290        
12 第一営業部 営業2課 2016/8/15 23418        
13 第一営業部 営業3課 2016/8/15 22425        
14 第二営業部 営業1課 2016/8/12 25077        
15 第二営業部 営業2課 2016/8/12 28015        
16 第二営業部 営業3課 2016/8/12 21846        
17 第二営業部 営業1課 2016/8/13 24330        
18 第二営業部 営業2課 2016/8/13 18325        
19 第二営業部 営業3課 2016/8/13 21377        
20 第二営業部 営業1課 2016/8/14 10034        
21 第二営業部 営業2課 2016/8/14 12663        
22 第二営業部 営業3課 2016/8/14 21711        
23 第二営業部 営業1課 2016/8/15 29986        
24 第二営業部 営業2課 2016/8/15 26620        
25 第二営業部 営業3課 2016/8/15 27264        

第二営業部、営業2課の、
合計金額、件数、平均金額を、
H3、H4、H5セルにそれぞれ求めます。

H3=SUMIFS(D:D,A:A,H1,B:B,H2) ・・・ 85623
H4=COUNTIFS(A:A,H1,B:B,H2) ・・・ 4
H5=AVERAGEIFS(D:D,A:A,H1,B:B,H2) ・・・ 21405.75


SUMIFSとAVERAGEIFSの第一引き数に、合計範囲・平均範囲を指定する事に気を付けてください。
後は、SUMIF、COUNTIF、AVERAGEIFが、しっかり身についていれば問題ないでしょう。


作業列(作業セル、計算セル)を使う事で、
SUMIF、COUNTIF、AVERAGEIFでも同じことが出来ます。


E列を作業列として使用します。
E2=A2&B2
として、最下行までコピーします。

A B C D E F G H
1 日付 金額 作業列   第二営業部
2 第一営業部 営業1課 2016/8/12 16393 第一営業部営業1課   営業2課
3 第一営業部 営業2課 2016/8/12 18847 第一営業部営業2課   合計金額
4 第一営業部 営業3課 2016/8/12 24840 第一営業部営業3課   件数
5 第一営業部 営業1課 2016/8/13 14704 第一営業部営業1課   平均金額
6 第一営業部 営業2課 2016/8/13 26148 第一営業部営業2課      
7 第一営業部 営業3課 2016/8/13 12772 第一営業部営業3課      
8 第一営業部 営業1課 2016/8/14 12859 第一営業部営業1課      
9 第一営業部 営業2課 2016/8/14 19161 第一営業部営業2課      
10 第一営業部 営業3課 2016/8/14 23670 第一営業部営業3課      
11 第一営業部 営業1課 2016/8/15 27290 第一営業部営業1課      
12 第一営業部 営業2課 2016/8/15 23418 第一営業部営業2課      
13 第一営業部 営業3課 2016/8/15 22425 第一営業部営業3課      
14 第二営業部 営業1課 2016/8/12 25077 第二営業部営業1課      
15 第二営業部 営業2課 2016/8/12 28015 第二営業部営業2課      
16 第二営業部 営業3課 2016/8/12 21846 第二営業部営業3課      
17 第二営業部 営業1課 2016/8/13 24330 第二営業部営業1課      
18 第二営業部 営業2課 2016/8/13 18325 第二営業部営業2課      
19 第二営業部 営業3課 2016/8/13 21377 第二営業部営業3課      
20 第二営業部 営業1課 2016/8/14 10034 第二営業部営業1課      
21 第二営業部 営業2課 2016/8/14 12663 第二営業部営業2課      
22 第二営業部 営業3課 2016/8/14 21711 第二営業部営業3課      
23 第二営業部 営業1課 2016/8/15 29986 第二営業部営業1課      
24 第二営業部 営業2課 2016/8/15 26620 第二営業部営業2課      
25 第二営業部 営業3課 2016/8/15 27264 第二営業部営業3課      

H3=SUMIF(E:E,H1&H2,D:D)
H4=COUNTIF(E:E,H1&H2)
H5=AVERAGEIF(E:E,H1&H2,D:D)



今回程度の、条件が2つくらいなら、どちら(SUMIFとSUMIFS等)でも良いでしょう。
より複雑な条件になった場合、
例えば、複数列でワイルドカードを使うような場合など
このような場合は、作業列を上手く使って、わかり易い仕組みにしておくことをお勧めします。



ワークシート関数一覧




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

数式.MOD関数(除算したときの剰余)
数式.MROUND関数、CEILING関数、FLOOR関数(指定値の倍数)
数式.RAND関数、RANDBETWEEN関数(乱数)
数式.CELL関数(セルの書式、位置、内容の情報)
ショートカット.Ctrl+S(上書き保存)
ショートカット.Ctrl+Z(元に戻す)
ショートカット.Ctrl+C(コピー)

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

データクレンジングと名寄せ|ExcelマクロVBA技術解説(10月20日)
SUMIFの間違いによるパフォーマンスの低下について|エクセル関数超技(6月17日)
条件式のいろいろな書き方:TrueとFalseの判定とは|ExcelマクロVBA技術解説(6月15日)
空白セルを正しく判定する方法2|ExcelマクロVBA技術解説(5月6日)
フルパスをディレクトリ、ファイル名、拡張子に分ける|ExcelマクロVBA技術解説(4月15日)
テキストボックスの各種イベント|Excelユーザーフォーム入門(4月9日)
フォルダ(サブフォルダも全て)削除する、Optionでファイルのみ削除|ExcelマクロVBAサンプル集(4月4日)
最後の空白(や指定文字)以降の文字を取り出す|エクセル関数超技(3月26日)
先頭の数値、最後の数値を取り出す|エクセル関数超技(3月26日)
Excelファイルを開かずにシート名をチェック|ExcelマクロVBAサンプル集(3月23日)

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

1.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
2.RangeとCellsの使い方|ExcelマクロVBA入門
3.Range以外の指定方法(Cells,Rows,Columns)|ExcelマクロVBA入門
4.変数とデータ型(Dim)|ExcelマクロVBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|ExcelマクロVBA入門
6.定数と型宣言文字(Const)|ExcelマクロVBA入門
7.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技
8.マクロって何?VBAって何?|ExcelマクロVBA入門
9.CSVの読み込み方法|ExcelマクロVBAサンプル集
10.ひらがな⇔カタカナの変換|エクセル基本操作



  • >
  • >
  • >
  • 数式.SUMIFS関数、COUNTIFS関数.AVERAGEIFS関数(複数条件)

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


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

    ↑ PAGE TOP