SUMIFS関数で合計対象範囲を複数列にする方法|飛び飛びも

ここでは、SUMIFS関数で「合計対象範囲を複数列指定する方法」を解説します。

 

基本的には1列しか指定できないのですが、数式の書き方を工夫すればできますので、その説明です。

 

なお、SUMIFS関数の基本的な使い方は以下のページへ引っ越しました。

⇒ SUMIFS関数の使い方

1.まずはやりたいことを確認

まずは、やりたいことを例を含めて確認します。

 

1-1.SUMIFS関数で「合計対象範囲」を複数列にしたい

やりたいことは、「SUMIFS関数で『合計対象範囲」を複数列にする」です。

 

通常、SUMIFS関数の合計対象範囲は複数列選ぶと#VALUE!エラーになります。

つまり、複数の列を合計したい時でもまとめて指定できないのです。

 

しかし一方で、合計したい列ごとにSUMIFS関数を作り、足すのはとても面倒です。

 

そこでなにか方法がないか?ということです。

 

1-2.例で確認

一つ例を見てみましょう。

上の表は、「産地」と「品名」ごとの「仕入量」の一覧です。ただ、仕入量が2列になっています。

 

このような場合で、SUMIFS関数の「合計対象範囲」を「C列~D列」と複数列指定しながらエラーなく合計できる方法を知る、ということです。

2.数式の形と引数指定のポイント

合計対象範囲の指定の仕方のポイントで、「複数列指定するとエラーになる」と書きましたが、他の関数と組み合わせるとできるようになります。

 

2-1.数式の形は

数式の形は、次の通りです。

=SUM(SUMIFS(OFFSET(合計対象範囲(左の一列),,{合計したい列}),条件範囲1,条件1,条件範囲2,条件2))

 

2-2.引数指定のポイント

ここでは、この数式特有の「合計対象範囲(左の一列)」と「合計したい列」を説明します。

 

なお、他の引数(「条件範囲」や「条件」)はSUMIFS関数の通常の入れ方でOKです。

 

2-2-1.「合計対象範囲(左の一列)」の指定の仕方

「合計対象範囲(左の一列)」では、「合計したい範囲のうち『一番左の一列』」を指定します。

例えば上の表は、仕入れ量の列が2列あります。

 

このどちらも合計対象範囲にしたい時、指定するのは「C列」、つまり「C3:C12」になります。

 

これは、合計したい範囲が3列でも10列でも同じです。

 

2-2-2.「合計したい列」の指定の仕方

「合計したい列」では、「『合計対象範囲(左の一列)』で指定した列を0として、合計したい列を『{0,1,…}の形』」で指定します。

例えば、上の表で仕入量の2列を合計対象範囲にしたい場合には、C列を0、D列を1と見て「{0,1}」と指定します。

別の例として、上の表で仕入量の3列を合計対象範囲にしたい場合には、C列を0、D列を1、列を2として「{0,1,2}」と指定します。

 

ちなみに、C列とE列といった形で「{0,2}」と指定してもOKです。

3.数式の作り方

実際に数式を作ってみます。

例は、先ほどの表を使います。「『産地』が『福島』」、「『品名』が『ねぎ』」の2つの条件に合う2列の「仕入量」を合計します。

 

以下手順です。

 

(1)セルに以下の数式をコピーし貼り付ける

【コピーする数式】

=SUM(SUMIFS(OFFSET(合計対象範囲(左の一列),,{合計したい列}),条件範囲1,条件1,条件範囲2,条件2))

 

(2)「合計対象範囲(左の一列)」の文字を消し、指定する

 

(3)「合計したい列」の文字を消し、{ }内に合計したい列を数値で、「,」で区切りながら入れる

 

(4)「条件範囲」や「条件」の文字を消し、それぞれ指定する

 

(5)OKボタンを押せば完了

これで、合計したい列をまとめて複数指定することができます。

 

以上、参考になれば幸いです。

 


口コミ・評判のいいExcel本の紹介】


SUMIFS関数に関連したページは、次の通りです。。

  • SUMIFS関数 各ページへのリンクはこちら
Top