見出し画像

【GoogleAppsScript】イベントIDを使って予定を取得

今回は作成済みの複数の予定を日時の条件に従って一度に取得するgetEventsメソッドの説明です。

大量の予定を一つずつシステムで取得してしまうと処理速度は遅くなってしまいますが

JavaScript側のプログラムの書き方によって回避できる方法もあります。

今回のプログラム


プログラム説明

var now = new Date();

こちらはJavaScriptの Date関数を使っています。
本日の日時を取得しnow変数に代入します。
開始日時を指定をするために使います。

var next24hours = new Date(now.getTime() + (24 * 60 * 60 * 1000));

こちらもJavaScriptの Date関数を使っています。
24時間後の日時(ミリ秒)で取得します。
終了日時を指定するために使います。

もし任意の日数に変更をしたい場合は、『24 * 60 * 60 * * 1000』この部分の24という数字を任意の日数に変更してください。

getEvents(startTime, endTime);

events.getEvents(now, next24hours);

getEventsは、指定された時間範囲内に開始するイベント、時間範囲内に終了するイベント、または時間範囲を含むイベントを返します。

for (i in allevents) {
console.log(allevents[i].getTitle());
}

開始日時から終了日時の全てのイベントを取得して
配列分、forでループさせます。
ループした分だけ、console.logで表示します。

サンプルプログラム

function myFunction() {
	var now = new Date();
	var next24hours = new Date(now.getTime() + (24 * 60 * 60 * 1000));
	var events = CalendarApp.getDefaultCalendar();
	var allevents = events.getEvents(now, next24hours);
  for (i in allevents) {
    console.log(allevents[i].getTitle());
  }
}

プログラム実行前

カレンダーのイベントに
予定1」「予定2」「予定3」を作成します。

イベントを作成します

プログラム実行後

実行後、「実行ログ」に開始日時~終了日時の間にあるイベント「予定1」「予定2」「予定3」のタイトルが表示されます。

実行ログにタイトルが表示されます

注意

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




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

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

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