エクセルでできることのほとんどは、Googleスプレッドシートでもできます。

昨日は、おいしくストロングゼロ「ダブルレモン」をがぶがぶ飲みながら、どうして女子アナウンサーは僕のような結婚願望の強い人間がいるのに、そんな人気者に手を出そうとするのかな? とぼやいていると、父ちゃんから教えてくれ! とSOSが入ったので、この関数を教えました。

[highlight color=”yellow”]SUMIF(さむいふ)関数[/highlight]です。どんな表計算ソフトにもあるので、スプレッドシート上で使ってみます。

こんな表を作成してみました。上からデータがどんどん蓄積されていって、最後にチョコレート、ポテトチップス、アイスクリームの総額を求めてみよう! という場合です。

sumif01

通常であれば、チョコレートの売り上げ金額のみを叩いて集計……となりそうですが、SUMIF(さむいふ)関数を使えば、簡単に求めることができます。以下、SUMIF関数の公式です。

=SUMIF(第1引数,第2引数,第3引数)

[divider type=”line” margintop=”0″]

【作業1】

第2引数から入力しましょう。まず、求めたいのはチョコレートですので、「”チョコレート”」と入力します。チョコレートは文字列データなので、ダブルコーテーションを使う必要があります。Excelの引数ボックスを使えば、自動的にダブルコーテーションはつけてくれるのですが、スプレッドシートなどは自分で入れなくてはダメです。

また、チョコレートと記載している「F2」のセルを参照しても構いません。通常は、セル参照ですけど、シートを共有して使う場合は、チョコレートと記載したほうが、共有しやすいかもしれませんね。

[divider type=”line” margintop=”0″]

【作業2】

次に指定するのは第3引数。ここは合計を求めたい数値範囲をすべて選択してください。この場合、「D3:D10」です。

[divider type=”line” margintop=”0″]

【作業3】

第2引数では「”チョコレート”」を選択しました。第1引数は、この第2引数のキーワードがある一列をすべて選択してください。これで、数式はこのようになります。

=SUMIF(C3:C10,F2,D3:D10)
=SUMIF(C3:C10,”チョコレート”,D3:D10)

どちらも答えは一緒です。チョコレートだけを求める場合は、このままでいいのですが、オートフィルを使って、ポテトチップスとアイスクリームの合計を求めていきたいですね。

その場合、作業4に続きます。

[divider type=”line” margintop=”0″]

【作業4】

第1引数と第3引数を絶対参照にします。Windowsでは、数式バーのC3:C10にカーソルを置いて、ファンクションキー4番「F4キー」を押します。Macの場合は、スプレッドシートですと「Fn+F4キー」となります。

=SUMIF($C$3:$C$10,F2,$D$3:$D$10)

式が長くなってしまいましたね。

けれども、こうしないとオートフィルで選択した際、相対参照によって、第1引数と第3引数の範囲が1セルずつ下にずれていってしまい、正確な足し算ができなくなってしまいますからね。

sumif02

SUMIF関数を使うためには、このように規則性のある表である必要があります。でないと、SUMIF関数が使えなくなってしまいますからね。気づいた方もいらっしゃるかと思うのですが、

=SUMIF($B$3:$B$10,101,$D$3:$D$10)

でも、答えは一緒になります。101は数値データなので、ダブルコーテーションは不要です。商品名に似たような項目がある場合、IDを使って求めたほうがミスはなさそうですね。