では、経験本数管理を実現するために、体調チェックを利用する考え方と、同一人物による異なる表記での記入を防ぐため、GoogleFormsの設問項目にデフォルト値を設定する方法をご紹介しました。
今回は、改めて経験本数を集計する方法をご紹介したいと思います。
前提条件
顧客名簿をGoogleスプレッドシートで作っている場合に、今回の方法が威力を発揮します。
イメージはこんな感じ。
さらに、ダイビング当日の体調チェックがGoogleFormにより以下の様に収集されているものとします。
※赤枠はダイビング終了後に手入力
完成イメージ
- ダイビング当日に体調チェックのフォームに記入してもらう
- その日の終わりに、潜った本数を記入する
- 自動的に顧客名簿に経験本数が反映される
という流れを実現したいと思います。
使用する関数-SUMIF
今回使用するのはSUMIFという関数です。
スプレッドシートを提供するGoogleによれば
範囲内の条件に一致するセルの合計を返します。
つまり、ある条件に合致した数値のみを合計することが出来る関数です。
実例を挙げて見て見ましょう。
灰色のセル(=場所)に『=SUMIF(B5:B7,A3,C5:C7)』と打ち込むことで、与えられた条件に合致する場合のみ、指定のセルの値を合計します。
この関数を訳してみると
“B5″〜”B7″の範囲の値が、”A3″と値が等しい行のみ、”C5″〜”C7″の範囲を合計しなさい
という意味です。
条件を判断する部分には、特定のセルだけでなく、文字列、等号・不等号と数字、を使用することが出来ます。
実装
ここからは、体調チェックとその日のダイビング本数を記入した以下のシートを、以前ご紹介したIMPORANGE関数によって、顧客リストというファイルの”活動”というシートに展開されているものとします。
〜顧客リストの先頭行〜
こちらのL列、”経験本数”のところに、以下のように入力します。
=SUMIF(‘活動’!C:C,B2&C2,’活動’!O:O)
“活動!”というのは、『活動というシートの』という意味です。
“B2&C2″の”&”は、『B2とC2の文字列をつなげて』という意味です。
範囲について、”列番号”:”列番号”という書き方は、その列全ての範囲、という意味です。
尚、これだけだと自店利用時の経験本数だけになるので、それ以外の本数も把握するようであれば、他店利用時の本数をM列等に記入し
=M2+SUMIF(‘活動’!C:C,B2&C2,’活動’!O:O)
とすることで、総本数を表示することが出来ます。
結局総本数を聞くなら一緒じゃん!と思われてしまうかもしれませんが、例えば経験本数●本以下だと思われる人にのみ、初心者向けツアーの案内をする、などといった使い方が出来るようになるので、それなりに価値はあることと思いますよ!