スプレッドシートで
勤怠管理を作る5ステップ

Excelや紙で行っている勤怠管理を、Googleスプレッドシートにまとめる手順を、中小企業向けに5ステップで整理します。

|著者: (ラスタージ代表)|対象: 勤怠管理 / スプレッドシート / 低コスト

Table of Contents

勤怠管理は「打刻の記録」から作る

出勤・退勤の時刻を月末にまとめて手入力する方法は、記入漏れや転記ミスが起きやすく、集計にも時間がかかります。打刻のたびに1行ずつ記録し、勤務時間は計算で求める形にすると、後から確認しやすくなります。

ラスタージ(Lustage)は低コストの業務システム開発を行っており、スプレッドシートとGASによる勤怠管理の構築もご相談いただけます。ここでは、自分たちで作る場合の5ステップを紹介します。

ステップ1:従業員マスタと就業ルールを決める

従業員ごとに1行の一覧表(マスタ)を作り、社員コード、氏名、所定労働時間、休憩時間を持たせます。パートと正社員で所定時間が違う場合も、ここで列を分けて管理します。

就業規則に関わる数字は、このシートに集約しておくと、変更が出たときに1か所の修正で済みます。

  • 社員コード、氏名、雇用区分
  • 所定労働時間(1日)
  • 休憩時間
  • メール・チャットの連絡先(通知用)

ステップ2:打刻の記録表を作る

別シートに、1回の打刻を1行で記録します。列は日時、社員コード、区分(出勤・退勤)、メモです。区分と社員コードはプルダウン(データの入力規則)にして、表記ゆれを防ぎます。

入力はGoogleフォームにすると、スマホからでも打刻でき、送信時刻が自動で記録されます。

ステップ3:日別の勤務時間を自動で計算する

日別の集計シートを作り、社員コードと日付ごとに最初の出勤と最後の退勤を取り出します。退勤から出勤を引き、休憩時間を除けば勤務時間になります。

所定労働時間を超えた分を残業として別の列に出すと、月次の集計が楽になります。法定の割増や深夜の扱いは、専門家に確認のうえで式を調整してください。

// 日別集計シート: A=社員コード, B=日付, C=出勤, D=退勤
// 出勤(その日の最初の打刻)
=MINIFS(打刻!A:A, 打刻!B:B, A2, 打刻!E:E, B2, 打刻!C:C, "出勤")
// 勤務時間(時間単位、休憩1時間の例)
=IF(AND(C2<>"", D2<>""), (D2-C2)*24 - 1, "")

ステップ4:月次の集計と修正の記録を残す

月次シートで、従業員ごとの出勤日数、総勤務時間、残業時間を集計します。ピボットテーブルを使うと、式を書かずに作れます。

打刻の修正が必要なときは、元の記録を書き換えず、修正の行と理由を追加します。誰がいつ直したかが残り、あとで確認できます。編集権限は管理者に絞ります。

ステップ5:未打刻の通知をGASで自動化する

毎日夕方にGASを実行し、出勤の記録はあるのに退勤がない人をメールで知らせます。トリガー(時間主導型)を設定すれば、人が確認しなくても動きます。

GASはGoogleアカウントで動くため、サーバー代などの月額運用費がかかりません。一方で、1回の実行時間やメール送信数に上限があるため、人数や頻度が多い場合は事前に確認します。

function notifyMissingClockOut() {
  const sheet = SpreadsheetApp.getActive().getSheetByName('日別集計');
  const today = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'yyyy/MM/dd');
  const rows = sheet.getDataRange().getDisplayValues().slice(1);
  const missing = rows.filter(r => r[1] === today && r[2] && !r[3]); // C=出勤, D=退勤
  if (missing.length === 0) return;
  const body = missing.map(r => `${r[0]}:退勤の打刻がありません`).join('\n');
  MailApp.sendEmail('info@example.com', '【勤怠】退勤の未打刻', body);
}

まとめ

従業員マスタ、打刻の記録表、日別の自動計算、月次集計と修正履歴、未打刻の通知の順に進めれば、無理なく勤怠管理を始められます。給与計算との連携や承認フローなど要件が大きい場合や、既存のExcelを活かして移行したい場合は、ラスタージにご相談ください。

よくある質問

従業員が数名〜数十名程度で、打刻と月次集計が中心なら運用できます。ICカードや位置情報の打刻、給与計算ソフトとの自動連携が必須の場合は、専用の勤怠管理システムも比較してください。

Googleフォームやスプレッドシートの入力欄から「出勤」「退勤」を送信し、日時と氏名を1行ずつ記録する方法が手軽です。GASのWebアプリにすれば、スマホから1タップで打刻する画面も作れます。

退勤時刻から出勤時刻を引いて休憩時間を除き、所定労働時間を超えた分を残業とします。休憩のルールは就業規則に合わせて式を調整し、最終的な判断は社労士など専門家に確認してください。

GAS(Google Apps Script)を毎日夕方に実行し、出勤の記録だけで退勤がない人にメールやチャットで通知できます。サーバー代などの月額運用費は0円で組めます。

はい。ラスタージ(Lustage)では、現在の運用を確認したうえで、スプレッドシートとGASによる低コストの勤怠管理を設計・開発します。向かない規模の場合は別の構成を正直にご提案します。

関連するサービス・記事

Official Docs

この記事で扱ったサービスの公式ドキュメントです。仕様や上限値は変わることがあるため、実装前に最新の内容をご確認ください。

自社の業務に合う構成を、 まず相談する。

現在の業務の流れと利用人数をお知らせください。ラスタージの田中達也が、勤怠管理の作り方まで正直にお答えします。

月額運用費0円の業務システムを見る