【直ぐに使える】Google apps scriptからカレンダー登録|-期間指定編-

google apps script 入門

Google apps scriptからカレンダーへ登録するイベントの期間を指定出来たら・・

スケジュールのブッキングもひと目で分かりますね。

アヒルン
アヒルン

イベント開始日と終了日を、スプレッドシートから登録できるの?

うちゅうじん
うちゅうじん

そのとおり。

今回はGoogle apps scriptからカレンダー登録-期間指定編-をご紹介致します。

Google apps scriptからカレンダーへ登録|期間指定をしてみよう

前回Google apps scriptからカレンダーへ終日イベントを登録する方法 をご紹介しました。

 

今回はイベントを終日登録ではなく

  • イベントの開始日
  • イベントの終了日

と期間を指定した登録を行っていきます。

 

大まかには

  1. 登録するカレンダーIDを設定
  2. イベントのタイトル・開始日・終了日を設定
  3. createAllDayEventにてイベント登録

という手順です。

 

先ずは冒頭GIFで使用したscriptをご参照下さい。↓

上記コードの○○○@gmailに指定のアドレスを設定すれば、コピペで直ぐに使えます。
アヒルン
アヒルン

う”。。今回もハードル高そうだよ・・

うちゅうじん
うちゅうじん

終了日の設定が増えただけだ。前回同様にcreateAllDayEventメソッド使って登録する。また1つずつ解決していこう。

Google apps scriptから期間指定されたイベントをカレンダー登録する3つの手順

手順1. GASからイベント登録するカレンダーIDを指定

最初にCalendarAppでカレンダーを呼び出し、getCalendarByIdでカレンダーIDを指定します。

/*GASからカレンダーIDを指定するsample*/

//登録するカレンダーIDを呼び出してeventへ格納
var event = CalendarApp.getCalendarById('○○○@gmail.com');
アヒルン
アヒルン

確かCalendarAppとgetCalendarByIdをドット「.」で繋いで、、IDはGmailを指定するんだっけ

うちゅうじん
うちゅうじん

ここの設定は後々使うので変数宣言しておくと良い。

参照:CalendarApp / getCalendarById

手順2. イベントのタイトル・開始日・終了日を設定

次にカレンダーに登録するイベントの

  • タイトル
  • 開始日
  • 終了日

を変数宣言します。

/*タイトル・開始日・終了日を格納sampl*/

//イベントのタイトルをtitleへ格納
var title = 'お泊り♡'
Logger.log(title);

//イベントの開始日をstartへ格納
var start = new Date('2017/12/25');
Logger.log(start);

//イベントの終了日をendへ格納
var end = new Date('2017/12/27');
Logger.log(end);
POINT!

ここで設定したタイトル・開始日・終了日はこの後のcreateAllDayEventメソッドのなかに格納して使います。

アヒルン
アヒルン

タイトルはシングルクオテーションで囲って、開始日・終了日はnew Dateでデータ型に換算して・・

うちゅうじん
うちゅうじん

日付けもシングルクオテーションで囲っておこう

本記事ではそれぞれ

  • タイトル=title
  • 開始日=start
  • 終了日=end

といった変数に開始日や終了日を格納しました。

手順3. createAllDayEventで手順2をイベント登録

最後にcreateAllDayEventでイベントをカレンダーへ登録します。

createAllDayEvent(title, startDate, endDate)

タイプ説明
titleStringイベントのタイトル
startDateDateイベントが開始される日付
(曜日のみが使用され、時間は無視されます)
endDateDateイベントが終了した日付
(曜日のみが使用され、時間は無視されます)

引用元:createAllDayEvent

 

先ほど設定した各変数を

  • event =カレンダーIDを取得
  • title=イベントのタイトル
  • start =イベントの開始日
  • end=イベントの終了日

createAllDayByIdに格納すればOKです。

/*変数をcreateAllDayByIdに格納sample*/

//createAllDayEventでカレンダーへイベントを登録
event.createAllDayEvent(title,start,end);
アヒルン
アヒルン

よし、繋げたぞ・・動くかな・・ドキドキ

手順1〜3を繋げたものがコチラです↓

これを実行してみると・・

 

 

 

アヒルン
アヒルン

やったwお泊りイベントが設定できた//

うちゅうじん
うちゅうじん

よくやったアヒルん(アヒルって宿泊の概念があるのか・・)

【コピペでOK!】Google apps scriptでカレンダーに登録しよう!-終日編-

Google apps scriptから期間指定されたイベントをカレンダー登録|まとめ

GASを使って指定したイベント期間をカレンダー登録してみましたが、無事に設定出来ましたか?

 

前回記事から少しだけ派生しただけなので、直ぐに作り終えられたのではないでしょうか。

  1. 登録するカレンダーIDを設定
  2. イベントのタイトル・開始日・終了日を設定
  3. createAllDayEventにてイベント登録
アヒルン
アヒルン

createAllDayEventメソッドってスゴイ便利だね

うちゅうじん
うちゅうじん

設定する内訳が分かればさらに詳細なイベントを設定できるぞ

というわけで次回はカレンダー登録するイベントに「場所・説明」を追加する方法をご紹介いたします。

5分でOK!Google apps scriptでカレンダーへイベントの場所・説明を登録する3つの手順

OYAKUN
OYAKUN
例えば開始日を’170101’、終了日を’180101’に設定すれば一度に一年分のスケジュールも登録できますヨ♪

コメント

タイトルとURLをコピーしました