このページでは
Excelで勤務時間表を作成するため、仕様をまとめます。
勤務時間表は、日付毎の時間の記録だけでなく、曜日や休日の判定、時間の合計、残業時間の内訳など、いろいろ機能を付与したくなりますがが、今回は、出来るだけシンプルに、Excelの関数も使いながら作成してみる、ということを目的にしています。
ポイント
勤務時間の記録は、会社やプロジェクトごとに細かなところで仕様の違いが出ると思います。
このサンプルを利用して、カスタマイズしたり、部分的に機能を参照されることを想定したいと思います。
仕様
今回作成する勤務時間表の仕様を、以下にまとめました。
要件
年月を入力すると自動的に一か月分の勤務時間表を作成する。
日々の出勤、退勤時刻を入力すると、勤務時間の合計を算出する。
基本時間を越えた部分は、残業時間として計上する。
但し、休日出勤の場合は勤務時間をすべて残業時間とする。
前提条件
入力チェックは実装しない。
土日を除く祭日等の休日の自動判定は行わない。
(休日の判定は、土日の自動判定+手動入力された休日とする。)
機能
レイアウトイメージは、機能の後半部分に掲載。
勤務時間表の初期設定
勤務時間表に年月を入力すると、日と曜日と休日が自動設定される。
年と月の入力
西暦年と月が入力出来る。
日の自動設定
年と月を入力すると、年月に応じて1日から末日までの日を設定する。
曜日の自動設定
日の自動設定と同時に、その日の曜日を設定する。
休日の自動設定
曜日が土日のときは、休日の設定を行う。
基本時間の設定
一日の基本時間と残業時間の上限時間が設定出来る。
基本時間の設定
定時まで勤務したときの時間の設定が出来る。
この時間を越えた分を残業時間として計上する。
残業上限の設定
一か月あたりの残業時間の上限時間を設定出来る。
上限を超えた場合、「残業時間の上限を越えました。」を表示する。
勤務時間の入力
勤務時間と休憩時間の入力が出来る。
出勤・退勤時刻
出勤時刻と退勤時刻が入力出来る。
休憩時間
休憩時間が入力出来る。
一日に何度も休憩する場合でも利用者が合算して入力する仕様とする。
作業時間・累積時間の自動算出
勤務時間と休憩時間を入力すると、作業時間とその日までの累積作業時間を自動算出する。
作業時間
出勤時刻、退勤時刻、休憩時間を入力すると、作業時間を自動算出する。
累積時間
同時にその日までの作業時間の累積を自動算出する。
残業時間・休日出勤・残業累積の自動算出
勤務時間と休憩時間を入力すると、残業時間と休日出勤、その日までの累積産業時間を自動算出する。
平日(土日以外)の場合
作業時間が基本時間を越えた場合、残業時間として自動算出する。
土日の場合
作業時間を、休日出勤として設定する。
残業累積
同時にその日までの残業時間と休日出勤の累積を自動算出する。
合計時間の自動算出
合計時間、残業時間の合計を算出する。
その他
入力チェックは実装しないが、どのセルに入力が出来るか出来ないか色分けする。
入力が出来るセル
年月と出勤・退勤・休憩時間を入力出来るセルとする。
薄い黄色で着色する。
入力が出来ないセル
自動算出結果を設定するセルは入力出来ないセルとする。
グレーで着色する。
特別なセル
休日の判定のうち、土日以外の祭日などの休日はカレンダーを持たない限り自動設定出来ないため、利用者が手作業で設定出来るようにする。
薄い青色で着色する。
※休日のセルは、休日判定のための関数が設定されているので、利用者が手作業で設定したとたんに、関数が上書きされてしまうデメリットがあります。
これを避けるための方法は、列を分ける、カレンダーを作る、等、いろいろ考えられますが、今回はExcel初心者レベルのサンプルを目的としているため、全体の見通しを考え、このような仕様としました。
レイアウトイメージ
まとめ
勤務時間表の仕様は以上です。
次回は、これらの仕様をExcelシート上で実現します。