勤怠計測ツールを作成しました

Category :
Google App Script

日々の勤怠をスプレッドシートで管理しているのですが、効率的に勤怠の管理と計測ができるようにGASで計測ツールを作成しました。

ライブラリとして公開しているので、ご興味ある方がいれば自由にお使いいただけます。

仕様

勤怠は月毎に集計され、日毎の勤怠時間を元に残りの稼働時間や勤務日数が計測されます。勤務時間は1日8時間として計算されます。 計測項目と詳細は下記の通りです。

  • 1日必要平均勤務時間
    • 残りの稼働時間を消化するために1日に必要な勤務時間
  • 残勤務日数
    • 残りの勤務日数
  • 1日平均勤務時間
    • 1日の平均稼働時間
  • 現出勤日数
    • 出勤日数の合計
  • 勤務時間計
    • 合計の勤務時間
  • 必要勤務日数計
    • 勤務日数の合計
  • 必要勤務時間計
    • 残りの稼働時間を消化するために必要な勤務時間
  • 余分稼働
    • 合計の勤務時間から(出勤日数 x 8時間)を引いた数

自動生成されるシート

公開したライブラリで用意しているスクリプトを実行すると、何月の勤怠シートを作成するか聞かれます。1月と入力すると、1月の勤怠シートが作成されて祝日・土日を除く勤務日が入力されます。有給などで休みとなる日がある場合は、休暇という名前のシートに指定の日付を入れておくことで勤怠シートから除外できます。入力する日付はMM月dd日とし、書式なしテキストとして1列目に羅列してください。

また、スプレッドシートを作成して最初のスクリプト実行では、集計シートが自動で作成され、デフォルトで作られるシート1というシートは削除されます。

勤怠シート

working-sheet

集計シート

measurement-sheet

休暇シート

holiday-sheet

使い方

スプレッドシートを作成し、拡張機能 > App Scriptを選択するとGASが開きます。続いて左サイドバーのライブラリから、下記のスクリプトIDを入力し検索してください。

1LTxw0v-ZIQHmEV3RZHgZSFAhasC_BNVPbdjkEFoAbbpSFm0_kCtlF8w2

バージョンは最新のものを選択してください。※2022年2月23日時点はバージョン1です。

gas-working-measurement-adding-library

IDの設定は自由です。

スクリプトを呼び出すための関数は、このように定義してください。

function generateSheet() {
ライブラリ追加で設定したID.generateSheet();
}

GAS画面

gas-working-measurement

このままだとGAS画面から実行することになり使いにくいと思うので、スプレッドシートで図形を作成し、スクリプトの割り当てをしておきましょう。こうしておくことでスプレッドシートから実行が可能になります。

スクリプトが実行できたら

スクリプトを実行し、各種シートが生成されたら勤怠計測の準備は完了です。日々の勤怠時間を勤怠シートに入力すると、集計シートに計測結果が自動計算されます。

注意事項

Google Calendarを開いたことがないアカウントだと、祝日の取得ができないためスクリプト実行がエラーになります。もし、エラーになったときはGoogle Calendarを一度開いてから実行してみてください。

以上で勤怠計測ツールのご紹介でした。

日常的に使うものなので随時アップデートしていこうと思います。

TOP
© 2021 uichi