目次
このチュートリアルでは、GoogleスプレッドシートでSUMIF関数を使って条件付きでセルの合計を出す方法を紹介します。 テキスト、数値、日付の計算式の例や、複数の基準で合計する方法について学びます。
Google Sheetsの関数の中には、データを要約したり分類したりするのに役立つものがあります。 今日は、そのような関数の一つであるSUMIFについて詳しく見ていきましょう。 構文や式の例を学ぶ前に、いくつかの重要な注意点から説明します。
Google Sheetsには、条件に応じて数字を足し算する機能が2つあります。 サミフ と スミフ このチュートリアルでは、SUMIF関数にのみ焦点を当て、SUMIFSの使用法については次回に説明します。
ExcelデスクトップやExcelオンラインでのSUMIFの使い方を知っていれば、Google SheetsでのSUMIFの使い方も簡単でしょう。 しかし、まだ急いでこのページを閉じないでください。あなたが知らなかった、目立たないけれどとても便利なSUMIF公式がいくつか見つかるかもしれません
Google SheetsのSUMIF - 構文と基本的な使い方
Google SheetsのSUMIF関数は、数値データをある条件に基づいて合計するためのものです。 その構文は以下のとおりです。
SUMIF(range, criterion, [sum_range])どこで
- レンジ (必須) - で評価されるべきセルの範囲。 基準 .
- 基準 (必須) - 満たされるべき条件。
- サム・レンジ (オプション) - 数値を合計する範囲です。 省略した場合は レンジ が合計されます。
例として、A列に「サンプル項目」と同じ項目がある場合に、B列の数値を合計する簡単な計算式を作ってみましょう。
そのために、以下の引数を定義する。
- レンジ - A5:A13という項目があります。
- 基準 - を含むセル - B1。
- サム・レンジ - 合計される量 - B5:B13.
すべての議論をまとめると、次のような式になる。
=SUMIF(A5:A13,B1,B5:B13)
そして、その通りに機能するのです。
Google SheetsのSUMIFの例
上記の例から、GoogleスプレッドシートでSUMIF式を使うのはとても簡単で、目をつぶっていてもできるような印象を受けるかもしれません。 ほとんどの場合、それは本当です :) しかし、より効果的に式を使うためのいくつかのトリックや自明ではない使い方があります。 以下の例は、いくつかの典型的な使用例を示します。 この例をより簡単に追うために、私はあなたを招待しています。サンプルのSUMIF Google Sheetを開きます。
テキストを条件とするSUMIF式(完全一致)
同じ行の別の列にある特定のテキストを持つ数値を足し合わせるには、単純に目的のテキストを 基準 通常、SUMIF式の引数のテキストは、「二重引用符」で囲む必要があります。
例えば、合計を得るために バナナ は、この式を使うんですね。
=SUMIF(A5:A13,"bananas",B5:B13)
あるいは、どこかのセルに基準を入れて、そのセルを参照することもできます。
=SUMIF(A5:A13,B1,B5:B13)
この式は明快ですね。 さて、全項目の合計を求めるにはどうしたらよいでしょう より バナナ? これには におよばない 演算子を使用します。
=SUMIF(A5:A13,"bananas",B5:B13)
セルに「除外項目」が入力されている場合は、not equal to演算子をダブルクォート("")で囲み、演算子とセル参照をアンパサンド(&)で連結します。 例えば、以下のような感じです。
=SUMIF (A5:A13,""&B1, B5:B13)
以下のスクリーンショットは、「Sum if equal to」と「Sum if not equal to」の両方の数式が動作している様子を示しています。
Google SheetsのSUMIFは、指定したテキストを検索することに注意してください まさに この例では バナナ の金額は合計されます。 グリーンバナナ と ゴールドフィンガー・バナナ 部分一致で合計する場合は、次の例のようにワイルドカード文字を使用します。
ワイルドカード文字を含むSUMIF計算式(部分一致)
ある列のセルに、別の列のセルが特定のテキストや文字を含んでいる場合に、そのセルの合計を計算したい場合。 セルに含まれる部分 の場合は、条件に次のワイルドカードのいずれかを含めてください。
- クエスチョンマーク(?)で任意の1文字にマッチします。
- アスタリスク(*)で任意の文字列にマッチします。
たとえば、すべての種類のバナナの量を合計するには、次の式を使用します。
=SUMIF(A5:A13,"*bananas*",B5:B13)
ワイルドカードを引用符で囲み、セル参照と連結することで、セル参照と一緒に使用することもできます。
=SUMIF(A5:A13, "*"&B1& "*", B5:B13)
いずれにせよ、SUMIF式はすべてのバナナの量を合計します。
実際のクエスチョンマークやアスタリスクにマッチさせるには、"~?" や "~*" のようにチルダ(~)文字を前置します。
例えば、同じ行のA列にアスタリスクがあるB列の数値を合計するには、次の式を使用します。
=sumif(a5:a13, "~*", b5:b13)
B1などのセルにアスタリスクを入力し、そのセルとチルダチャールを連結することもできます。
=SUMIF(A5:A13, "~"&B1, B5:B13)
Google Sheetsで大文字と小文字を区別してSUMIFする
Google Sheets の SUMIF は、デフォルトでは小文字と大文字を区別しません。 大文字と小文字を区別して扱うようにするには、SUMIF と FIND および ARRAYFORMULA 関数を組み合わせて使用します。
sumif(arrayformula()検索(") テキスト ", range)), 1, sum_range)A5:A13に注文番号、C5:C13に対応する金額のリストがあり、同じ注文番号が複数の行に出現するとします。 あるセル(たとえばB1)に対象の注文IDを入力し、次の数式で注文合計を返すようにします。
=sumif(arrayformula(find(b1, a5:a13)),1, c5:c13)
この式の仕組み
この式のロジックをよりよく理解するために、意味のある部分に分解してみましょう。
一番厄介なのは レンジ 引数: ARRAYFORMULA(FIND(B1, A5:A13))
大文字と小文字を区別するFIND関数を使って、正確な注文IDを探します。 問題は、通常のFIND式は1つのセル内しか検索できないことです。 範囲を検索するには、配列式が必要なので、FINDをARRAYFORMULA内にネストします。
上記の組み合わせで完全一致した場合は1(最初に見つかった文字の位置)を返し、そうでない場合は#VALUEエラーを返します。 そこで、あとは1に対応する金額を合計するだけです。 基準 の引数で、C5:C13の引数になります。 sum_range 論破されました。
数値のSUMIF式
ある条件を満たす数値を合計するには、SUMIFの式で比較演算子のいずれかを使用します。 ほとんどの場合、適切な演算子を選択することは問題ではありません。 それを適切に基準に埋め込むことが課題となる場合があります。
より大きいか小さい場合の和
ソース番号と特定の番号を比較するには、以下の論理演算子のいずれかを使用します。
- 大
- 下
- 以上
- 以下 (<=)
例えば、B5:B13の数字が200より大きいものを足し算する場合は、以下の式を使用します。
=SUMIF(B5:B13、">200")
比較演算子を前置した数値と、引用符で囲まれた構文に注目してください。
あるいは、どこかのセルに数値を入力し、比較演算子とセル参照を連結することも可能です。
=SUMIF(B5:B13, ">"&B1, B5:B13)
比較演算子と数値を別々のセルに入力し、そのセルを連結することも可能です。
同じように、他の論理演算子も使うことができます。
200以上の場合はSum。
=SUMIF(B5:B13、">=200")
200以下の場合、Sum。
=SUMIF(B5:B13、"<200")
200以下の場合はSum。
=SUMIF(B5:B13、"<=200")
と等しい場合は和とする。
特定の数値と等しい数値を合計するには、数値とともに等号(=)を使用するか、等号を省略して数値のみを 基準 の議論になります。
例えば、C列の数量が10であるB列の数量を足すには、次のいずれかの式を使用します。
=sumif(c5:c13, 10, b5:b13)
または
=sumif(c5:c13, "=10", b5:b13)
または
=sumif(c5:c13, b1, b5:b13)
ここで、B1 は必要な数量が入力されているセルです。
と等しくない場合は加算
指定した数値以外の数値を合計する場合は におよばない 演算子()を使用します。
この例では、B列にある金額のうち、C列にある10以外の数量を足すには、以下の公式のいずれかを使用します。
=sumif(c5:c13, "10", b5:b13)
=SUMIF(C5:C13、""&B1、B5:B13)
下のスクリーンショットはその結果です。
Google Sheetsの日付のSUMIF計算式
日付の条件に基づいて値を合計するには、上記の例のように比較演算子も使用します。 重要なのは、Google Sheetsが理解できる形式で日付を指定することです。
例えば、2018年3月11日以前の納期についてB5:B13の金額を合計するには、以下のいずれかの方法で基準を構築します。
=SUMIF(C5:C13、"<2018/3/11"、B5:B13)
=SUMIF(C5:C13, "<"&DATE(2018,3,11), B5:B13)
=SUMIF(C5:C13, "<"&B1, B5:B13)
ここで、B1 は目標期日である。
に基づいて条件付きでセルを合計したい場合。 きょうというひ に、TODAY()関数を入れてください。 基準 の議論になります。
例として、今日の配達分の金額を足し算する計算式を作ってみましょう。
=sumif(c5:c13, today(), b5:b13)
さらに例を挙げると、過去と未来の納品の合計を求めることができる。
今日まで。 =SUMIF(C5:C13, "<"&TODAY(), B5:B13)
今日を境に。 =SUMIF(C5:C13, ">"&TODAY(), B5:B13)
空白または非空白のセルに基づく合計
多くの場合、ある列の値を合計する際に、他の列の対応するセルが空であるか、空でないかが必要になることがあります。
そのためには、Google SheetsのSUMIF式で以下のいずれかの基準を使用します。
空白の場合、合計する。
- "=" は、完全に空白のセルを合計するために使用します。
- "" は、長さが0の文字列を含む空白セルの合計を指定します。
空欄でなければ和とする。
- ""を使えば、長さ0の文字列を含む、任意の値を含むセルを足し合わせることができます。
例えば、納期が設定されている金額の合計を出す場合(C列のセルは 空いてない ) の場合、この式を使用します。
=sumif(c5:c13, "", b5:b13)
納期がない金額の合計を出すために(C列のセルは 空っぽ )、こちらをお使いください。
=sumif(c5:c13, "", b5:b13)
Google SheetsのSUMIFで複数条件(ORロジック)を設定する
Google SheetsのSUMIF関数は、1つの基準だけで値を合計するように設計されています。 複数の基準で合計するには、2つ以上のSUMIF関数を一緒に追加することができます。
例えば、合計する場合 りんご と オレンジ の量は、この計算式を利用してください。
=SUMIF(A6:A14, "apples", B6:B14)+SUMIF(A6:A14, "oranges", B6:B14)
あるいは、項目名をB1とB2のように2つのセルに分けて入れ、それぞれのセルを基準として使用します。
=sumif(a6:a14, b1, b6:b14)+sumif(a6:a14, b2, b6:b14)である。
この式は、SUMIF と同じように動作することに注意してください。 オアロジカル - は、指定された基準の少なくとも1つが満たされた場合、値を合計する。
この例では、列Aが「りんご」または「オレンジ」に等しい場合に列Bの値を追加します。 つまり、SUMIF() + SUMIF() は次の擬似式(本物ではありません、論理を示すだけです!)のように動作します: sumif(A:A, "apples" or "oranges", B:B).
との条件付き和を求めるのであれば ANDロジカル つまり、指定した条件をすべて満たしたときに値を加算するには、Google SheetsのSUMIFS関数を使用します。
Google SheetsのSUMIF - 覚えておくべきこと
Google SheetsのSUMIF関数のコツがわかったところで、すでに学んだことを簡単にまとめておくといいかもしれません。
1.SUMIFは1つの条件しか評価できない
SUMIF関数の構文では、1つだけ レンジ , 1 基準 と1 sum_range . たげんてき のように、複数のSUMIF関数を足し合わせる(OR論理)か、SUMIFSの数式を使う(AND論理)かのどちらかです。
2.SUMIF関数は、大文字と小文字を区別します。
大文字と小文字を区別できるSUMIF式をお探しの場合は、この例のようにSUMIFとARRAYFORMULAとFINDを組み合わせてお使いください。
3.同じ大きさの範囲とsum_rangeを用意する。
実は、この sum_range 引数は合計する範囲の左上端のセルだけを指定し、残りの領域は レンジ の議論になります。
SUMIF(A1:A10, "apples", B1:B10) と SUMIF(A1:A10, "apples", B1:B100) はどちらも B1:B10 の範囲の値を合計することになります。 レンジ (A1:A10)。
そのため、間違って合計範囲を指定しても、Google Sheets は、左上のセル sum_range が正しい。
とはいえ、同じ大きさのものを用意することが推奨されます。 レンジ と sum_range ミスを防ぎ、矛盾の問題を防ぐためです。
4.SUMIF基準の構文に気をつける
Google SheetsのSUMIF式が正しく動作するためには、条件を正しい方法で表現してください。
- 基準に含まれる場合 テキスト , ワイルドカード文字 または 論理演算子 の後に数字、テキスト、日付を続ける場合は、基準を引用符で囲んでください。 例えば、以下のようになります。
=SUMIF(A2:A10, "apples", B2:B10)
=sumif(a2:a10, "*", b2:b10)
=SUMIF(A2:A10, ">5")
=SUMIF(A5:A10, "apples", B5:B10)
- 基準に含まれる場合 論理演算子 であり セル参照 または別の 機能 は、引用符で文字列を開始し、アンパサンド(&)で文字列を連結して終了します。 例えば、以下のようになります。
=SUMIF(A2:A10, ">"&B2)
=SUMIF(A2:A10, ">"&TODAY(), B2:B10)
5.必要に応じて、絶対セル参照で範囲をロックする。
SUMIF式を後でコピーしたり移動したりする場合は、SUMIF($A$2:$A$10, "apples", $B$2:$B$10) のように絶対セル参照($記号)を使って範囲を固定します。
以上、GoogleシートでSUMIF関数を使う方法でした。 このチュートリアルで説明した数式をより詳しく見るには、サンプルのSUMIF Googleシートを開いてください。 読んでいただきありがとうございました!来週のブログでお会いしましょう