見出し画像

Googleサイトで作るグループウェア(15)ータイムカード機能の追加②ー

この記事を読んで欲しい方

Googleワークスペースを企業DXに導入したが、上手く広げられていない方
Googleワークスペースを導入しようと考えてる中小企業の方
無料のGmailやクラウドアプリだけ使っているテレワーカー
GIGAスクールなどでGoogle for Eduを導入している学校

①勤怠管理データの集計

前回に引き続き、まず、全体の流れを確認してください。
今回は、②勤怠管理データの中に3つのシートを追加します。1つ目は「職員マスタ」、2つ目は「実績集計表」、3つ目は「在席情報」です。

②職員マスタシートの作成

まずはじめに、職員マスタシートを作ります。これは、メールアドレスから氏名を引っ張るために作ります。新しい人が入っても、タイムカードフォームを変更せずに、職員マスタシートにメールアドレスと氏名を登録するだけでタイムカードを使えるようになります。
とりあえず、メールアドレスと氏名を入れておいてください。

職員マスタシート

③メールアドレスから氏名を引く関数

次に、フォームの回答1のG2のセルにメールアドレスから氏名を引く関数を入力します。G1には氏名と入れてください。

=arrayformula(IFERROR(vlookup($B$2:$B,'職員マスタ'!A$2:$C,2,false),""))
氏名が追加された

関数は、arrayformulaを使っているので、データが入ってくると自動的に下に氏名が追加されます。

④実績集計表シートの作成

次に、実績集計表をつくります。フォームの回答1を選び、AからG列を選択して、挿入>ピボットテーブルを選んでください。
ピボットテーブルのダイアログが開いたら、新しいシートにチェックを入れ、作成ボタンを押します。

ピボットテーブルの挿入

これで、集計画面になりました。右側のピボットテーブルエディタで、行と列、値、フィルタを設定していきます。
なお、シート名は実績集計表に変更してください。

まず、'フォームの回答 1'!A:Gとなっていることを確認してください。A:Gとなっていることで、AからG列に入ってくるデータは全て自動集計することが出来ます。
次に、行にメールアドレスと氏名、打刻日付を追加します。チェック項目は「行ラベルを繰り返す」のみチェックして統計を表示はすべて外してください。これで、同じメールアドレスと氏名が複数並ぶシートになります。

行の追加

次に、列は勤怠種別を追加します。総計を表示のチェックは外してください。更に、値に打刻時刻を追加します。
また、フィルタにメールアドレスと打刻日付を追加し、それぞれ「条件でフィルタ」>「空白ではない」と設定します。

列と値とフィルタを追加

次に、実績集計表のH3に稼働時間計算用の関数を挿入します。H2には稼働時間と入力してください。そして、H1には1:00:00と入力します。
さらに、H列の表示形式を時間に変更します。H列を選び、メニューの表示形式>数字>時間を選びます。
関数は、arrayformulaを使っているので、データが入ってくると自動的に下に追加計算され表示されます。
これで、稼働時間が表示されました。
計算は、退社から出社時間を引いて、さらにH1に設定した1時間を引いています。(休憩と復帰の差の計算はしていません)

=arrayformula(if($B3:$B="","",$D3:$D-$C3:$C-$H$1))

これで、タイムカードから吐出されたデータがフォームの回答1に入り、実績集計表で稼働時間の集計ができるようになりました。

⑤在席情報シートの作成

さて、最後になりますが在席情報シートを作成します。
行には、打刻日付と氏名を追加し、打刻日付の並べ替えを降順にします。

行の追加

列には、勤怠種別、値には打刻時刻、フィルタには氏名と打刻日付を追加し、条件でフィルタ>空白ではないを設定します。

列と値とフィルタ

フィルタの打刻日付ですが、実際の運用直前には、条件を「空白ではない」から、日付>本日を選んで、今日の日付に直すと今日だけの情報が集計されます。また、表示期間は過去1週間以内も選べるので、適宜現場の状況で変更してください。

打刻日付の期間の設定
在席情報シートの完成

これで、在席情報シートが完成しました。
さて、次回は、作った在席情報シートのデータを、表示のみに利用する別の在席管理ファイルに飛ばして、マイサイトに埋め込みます。
これは、勤怠管理データファイルを直接マイサイトに貼り付けてしまうと、他のシートも丸見えになってしまうための処理になります。(続く)

この記事が気に入ったらサポートをしてみませんか?