見出し画像

【GoogleAppsScript】1年のうち特定の1日のみに適用される【onlyOnYearDay(day) 】

このルールを適用すると、1年のうち特定の1日のみに適用されます。

今回のプログラム


プログラム説明

var calendar = CalendarApp.getDefaultCalendar();

にて、自分が使用するCalendarを取得します。
こちらは特に意識することはありません。カレンダーを操作する際にはこれを書くのだな?ぐらいに思っておいてください。

var adrec = recurrence.addYearlyRule();
var owrec = adrec.onlyOnYearDay(10);

addYearlyRuleで年間スケジュールを設定します。

そして、1年のうちonlyOnYearDayメソッドで特定日「10日」→「1月10日」にイベント(予定)を設定します。

CalendarApp.getDefaultCalendar()
.createAllDayEventSeries('予定', today, owrec);

最後にCalendarApp.getDefaultCalendar()で
予定を作成します。
createAllDayEventSeriesは、引数1つ目には予定名
2つ目は、イベントスタート日(イベント設定日)、3つ目は繰り返しイベントを設定をします。

サンプルプログラム

function myFunction() {
  var today = new Date();
  var recurrence = CalendarApp.newRecurrence();
  var adrec = recurrence.addYearlyRule();
  var owrec = adrec.onlyOnYearDay(10);

  CalendarApp.getDefaultCalendar()
             .createAllDayEventSeries('予定', today, owrec);
}

プログラム実行前

特になしです。


プログラム実行後

まずはtoday日付に予定が設定されます。

まずは第2引数の日付が予定で設定されます。

1年に1回、10日後→「1月10日」にイベントが設定されます。

1年に1回引数の10日後に予定が設定されます

注意

実行時に「権限ポップアップ」が出る場合はこちらを参照してください。


もっとGoogleAppsScriptを学びたい人はこの一冊!

#GoogleAppsScript #JavaScript #プログラミング #プログラミング初心者 #JavaScript初心者

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