フリーランス/個人事業主をしているママさんは、保育園にシフト表を提出していると思います。
わたしも毎月提出しているのですが、GAS(Google Apps Script)の勉強も兼ねて、自動作成プログラムを作ってみました。
前提条件
ExcelVBAプログラムは作成できます。GASは、文法と実行の仕方とHello World よりちょっとわかるくらいの初心者。
Excel VBAの知識をもとに GASを使いこなすための勉強中。
※ 育児とクライアント様の仕事しながらなので、なかなか時間が取れませんが…💦
作りたいプログラムの条件は以下。
- 年月を入力してプログラムを実行すると、日付/曜日(祝日も)/勤務時間を自動出力。
- 土日祝日以外の平日に、勤務時間を出力。
プログラムのポイント
GASは、本がなくてもネット検索でだいたいの事が調べられます。とっても便利。
今回のキモは祝日判定ですが、少し調べるだけで、たくさん例が出てきました。
祝日判定の準備は以下の2行。
const id = ‘ja.japanese#holiday@group.v.calendar.google.com’
const cal = CalendarApp.getCalendarById(id);
使い方は以下。
if(cal.getEventsForDay(dt).length){
st.getRange(i,6).setValue(syuku); // 祝日
} else…
便利ですよね~。
Googleカレンダーサービスを行っているGoogleだからこそ、このくらいの手軽さで祝日判定処理が実装できるんだな~と思いました。
完成プログラムの動作
GIFアニメーションで見るとこんな感じです。
日付を入力して、拡張機能→マクロ→myFunctionで実行、もしくはCtrl+Alt+Shift+7 で実行したら、あとは待つだけ。
まとめ
だいたい1時間くらいで出来ましたので、手軽です。
GASは、一番最初にプログラム実行するときに「実行許可」処理が必要ですが、それさえ一度してしまえばExcelVBAのように使えます。
プログラムに興味がある学生さんや社会人の方にはおすすめです!