見出し画像

[GAS]祝日を取得

GASerが年初にやらなければならないタスク、それは祝日取得。
以前にも記事にしましたがちょっと改修して再掲載。

シート名を[祝日]にしたスプレッドシートを用意。
1行目は見出し行にします。

スクリプトはこちら。

function getHoliday() {

  // 期間定義:今年の1/1から来年の12/31までとする
  let startDate = new Date();
  startDate.setMonth(0, 1);

  let endDate = new Date();
  endDate.setFullYear(endDate.getFullYear() + 1, 11, 31);

  const cal      = CalendarApp.getCalendarById("ja.japanese#holiday@group.v.calendar.google.com");
  const holidays = cal.getEvents(startDate, endDate);
  const allay    = [];

  for (const holiday of holidays) {
    allay.push([holiday.getStartTime(), holiday.getTitle()]);
  }

  const sheet   = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("祝日");
  const lastRow = sheet.getLastRow()
  sheet.getRange(lastRow + 1, 1, allay.length, allay[0].length).setValues(allay);
}

実行後はこのような感じ。

今年もどうぞよろしくお願いいたします。


続きの記事を書きました。


この記事が気に入ったらサポートをしてみませんか?