GASで日本の休日・祝日を判定する方法を解説します(Google Apps Script)

@Panda_Program

コピペですぐに使えます。これ結構使えるんですよね。自分で何度も参照してます。

祝日を判定する

function isHoliday() {
  const today = new Date();
  const calendars = CalendarApp.getCalendarsByName('日本の祝日');
  const count = calendars[0].getEventsForDay(today).length;
  return count > 0;
}

isWeekday()の返り値は祝日ならtrue、祝日でなければfalseです。

解説

getCalendarsByName(name)で「日本の祝日」という名前のカレンダーを取得します。返り値はカレンダーの配列です。

getEventsForDay(today)で今日の日付のイベントを取得します。カレンダーに登録されたイベントの個数を返す関数なので、返り値は祝日でなければ0、祝日であれば1です。

休日を判定する

function isWeekend () {
  const today = new Date();
  const day = today.getDay();
  return (day === 6) || (day === 0);
}

isWeekend()の返り値は休日ならtrue、休日でなければfalseです。

休日と祝日を判定する

function main() {
  const today = new Date();
    if (isWeekend(today) || isHoliday(today)) {
        return;
    }

  // 何らかの処理
}

function isWeekend (today) {
  const day = today.getDay();
  return (day === 6) || (day === 0);
}

function isHoliday(today){
  const calendars = CalendarApp.getCalendarsByName('日本の祝日');
  const count = calendars[0].getEventsForDay(today).length;
  return count > 0;
}

その他、やりたいことがあれば、カレンダーのAPIを参照してみてください。

Happy Coding 🎉

パンダのイラスト
パンダ

記事が面白いと思ったらツイートやはてブをお願いします!皆さんの感想が執筆のモチベーションになります。最後まで読んでくれてありがとう。

  • Share on Hatena
  • Share on Twitter
  • Share on Line
  • Copy to clipboard