見出し画像

【GoogleAppsScript】連続する複数日を繰り返しルールから除外する【addDailyExclusion】

今回のプログラム


プログラム説明


var today = new Date();

本日の日付を取得します。

var recurrence = CalendarApp.newRecurrence();

新しいイベントルールを作成します。

var rrule = recurrence.addWeeklyRule();

新しいルールは毎週予定のイベントを作成します。

var rexecusion = rrule.addDailyExclusion();
var rdata = rexecusion.times(7);

毎週イベントですが、予定除外日数 addDailyExclusionで設定します。
times(7) で7日間は予定を除外する設定をします。

CalendarApp.getDefaultCalendar()
.createAllDayEventSeries('毎週予定', today, rdata);

ということで、最後はcreateAllDayEventSeriesでイベントを作成。
引数1つ目に、タイトル、2つ目はスタート日、3つ目は除外条件
この場合は今日から7日間は予定作成を除外し、毎週イベントを作成するということになります。

サンプルプログラム

function myFunction() {
  var today = new Date();
  var recurrence = CalendarApp.newRecurrence();
  var rrule = recurrence.addWeeklyRule();
  var rexecusion = rrule.addDailyExclusion();
  var rdata = rexecusion.times(7);
  CalendarApp.getDefaultCalendar()
             .createAllDayEventSeries('毎週予定', today, rdata);
}

プログラム実行前

特になし

プログラム実行後

実行後、addDailyExclusionにより、本日から7日後の週予定として連続作成ができます。

週予定を作成します①
週予定を作成します②

注意

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


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


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

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