カレンダーにイベントを追加する
Google Apps Scriptでは、カレンダーにイベントを新たに作成することも可能です。CalendarAppからCalendarオブジェクトを取得し、新たにイベントを作成する「createEvent」メソッドを呼び出すことでそのカレンダーにイベントを登録することができます。実際にやってみましょう。
function makeCalEvent(){ var cname = Browser.inputBox("イベントを入力:"); if (cname != "" & cname != "cancel"){ var cal = CalendarApp.getDefaultCalendar(); var d1 = new Date(); var d2 = new Date(); d1.setHours(9); d2.setHours(17); d1.setMinutes(0); d2.setMinutes(0); d1.setSeconds(0); d2.setSeconds(0); cal.createEvent(cname, d1, d2); Browser.msgBox("新しいイベントを追加しました。"); } }
![図15 タイトルを入力すると、今日の9:00~17:00の予定でカレンダーにイベントを作成する。](http://cz-cdn.shoeisha.jp/static/images/article/5064/15.gif)
これは、デフォルトのカレンダーにイベントを追加するサンプルです。イベントのタイトルを入力すると、その日の9:00~17:00のイベントとして登録をします。ここではCalendarApp.getDefaultCalendarでCalendarオブジェクトを取得した後、2つのDateオブジェクトを用意してcreateEventを呼び出しています。このcreateEventは、
《Calendar》.createEvent( タイトル ,《Date》,《Date》);
このような形で呼び出します。引数に、イベントのタイトルと、イベントの開始日時・終了日時を示すDateオブジェクトを渡す必要があります。なお、ここではデフォルトのカレンダーに追加しましたが、openByNameなどでCalendarを取得することで、その他の任意のカレンダーにイベントを追加することももちろん可能です。
まとめ
以上、今回は作成したスクリプトの使いこなしから、その他のGoogle関連サービスとの連携などについて一通りの機能をまとめて解説しました。Google Apps Scriptが、単なる表計算ソフトのマクロといったものにとどまらぬものであることを少しは感じられたのではないでしょうか。
Googleは、Google Apps ScriptによってあらゆるWebアプリケーションをスクリプトで統合することをどうやら本気で考えているようです。それがどこまで可能か、現時点では分かりません。が、少なくともGoogleカレンダーやGoogleコンタクトなどとの連携を実際に利用してみると、これは大きな可能性を秘めていることが分かるでしょう。
Google Apps Scriptを使い、Googleスプレッドシートにあらゆる情報を取り込んで整理していく。これは実際にやってみると、かなり面白いものです。まだまだ荒削りなところはありますが、ぜひ一度、使ってみてください。さまざまな可能性がきっと見えてくるはずです。