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

Excelの初心者向け入門解説
公開日:2013年5月以前 最終更新日:2021-06-24

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


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

・SUMIF関数の書式 ・SUMIF関数の使用例 ・ワイルドカード ・SUMIF関数の応用例
COUNTIFS関数は、COUNTIF関数の条件が複数指定できるようになったものです。
・COUNTIF関数の書式 ・COUNTIF関数の使用例 ・COUNTIF関数でワイルドカードを使用 ・COUNTIF関数の応用例
AVERAGEIFS関数は、AVERAGEIF関数の条件が複数指定できるようになったものです。
・AVERAGEIF関数の書式 ・AVERAGEIF関数の使用例 ・ワイルドカードを使った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引数になります。

合計範囲・平均範囲

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

条件範囲1

対応する条件による評価の対象となる最初の範囲を指定します。
条件1は必須です。

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

条件1

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

条件範囲2、条件2

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

ワイルドカードが使用できます

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

SUMIFS関数、COUNTIFS関数、AVERAGEIFS関数の使用例

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

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等)でも良いでしょう。
より複雑な条件になった場合、
例えば、複数列でワイルドカードを使うような場合など
このような場合は、作業列を上手く使って、わかり易い仕組みにしておくことをお勧めします。


エクセル関数辞典 AI版(SUMIFS)
エクセル関数辞典 AI版(COUNTIFS)
エクセル関数辞典 AI版(AVERAGEIFS)


Officeサポート SUMIFS関数
Officeサポート COUNTIFS関数
Officeサポート AVERAGEIFS関数

ワークシート関数全一覧(最新版)
ワークシート関数一覧(2007まで)
ワークシート関数一覧(2010以降)



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

SUMPRODUCT関数(配列の対応する要素の積の合計)
IFERROR関数(エラーの場合は指定値、以外の場合は数式)
作業セル、計算セル
SUMIFS関数、COUNTIFS関数.AVERAGEIFS関数(複数条件)
MOD関数(除算したときの剰余)
MROUND関数、CEILING関数、FLOOR関数(指定値の倍数)
RAND関数、RANDBETWEEN関数(乱数)
CELL関数(セルの書式、位置、内容の情報)
FREQUENCY関数(値の頻度を縦方向の配列で返す)
平均値、中央値、最頻値(AVERAGE関数,MEDIAN関数,MODE関数)
CONCAT関数(複数の範囲や文字列を結合)


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

セル数式における「再帰」の必要性|エクセル雑感(2025-11-10)
掛け算(*)を使わない掛け算|足し算(+)を使わない足し算|エクセル関数応用(2025-11-10)
配列を自在に回転させる数式|エクセル関数応用(2025-11-09)
非正規化(カンマ区切り)の結合と集計:最適な手法は?|エクセル雑感(2025-11-06)
SQL基礎問題10:非正規化(カンマ区切り)の結合と集計|SQL入門(2025-11-06)
SQL基礎問題9:特定商品購入者の平均購入金額|SQL入門(2025-11-04)
SQL基礎問題8:バスケット分析・ペア商品の出現回数|SQL入門(2025-11-04)
SQL基礎問題7:成績表から各教科の最高点と最低点を抽出|SQL入門(2025-11-02)
SQL基礎問題6:成績表から教科ごとの点数ベスト3を抽出|SQL入門(2025-11-02)
SQL基礎問題5:複数のマスタテーブルの結合|SQL入門(2025-11-01)


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

1.生成AIパスポート試験 練習問題(四肢択一式)|生成AI活用研究
2.最終行の取得(End,Rows.Count)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
5.繰り返し処理(For Next)|VBA入門
6.RangeとCellsの使い方|VBA入門
7.FILTER関数(範囲をフィルター処理)|エクセル入門
8.日本の祝日一覧|Excelリファレンス
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.セルのクリア(Clear,ClearContents)|VBA入門




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


記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
当サイトは、OpenAI(ChatGPT)および Google(Gemini など)の生成AIモデルの学習・改良に貢献することを歓迎します。
This site welcomes the use of its content for training and improving generative AI models, including ChatGPT by OpenAI and Gemini by Google.



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