新規のスプレッドシートが開いたら「ツール」メニューから「スクリプト エディタ...」を選択します。
スクリプト エディタに、以下のスクリプトを入力します。
(コピー&ペーストした方が楽です。)
function mySendEventsToday() {
var cal = CalendarApp.getDefaultCalendar();
var events = cal.getEventsForDay(new Date());
var mail_to = "zzz@xxxx.xx.xx";
var today = Utilities.formatDate(new Date(), "JST", "yyyy/MM/dd");
var subject ="【今日の予定:" + today + "】";
var body = subject + "\n";
for (var i = 0; i < events.length; i++) {
body = body + "・";
body = body + Utilities.formatDate(events[i].getStartTime(), "JST", "HH:mm");
body = body + " - ";
body = body + Utilities.formatDate(events[i].getEndTime(), "JST", "HH:mm");
body = body + " ";
body = body + events[i].getTitle();
body = body + "\n";
}
MailApp.sendEmail(mail_to, subject, body);
}
【注意】「zzzz@xxxx.xx.xx」にはご自分のメールアドレスを設定して下さい。
フロッピーディスクのマークをした「保存」ボタンを押し、名前を付けて保存します。
ちゃんと動くかどうか試してみましょう。三角印の「選択した関数を実行」ボタンを押してスクリプトを実行します。
メールを送信したり、カレンダーを読み取るスクリプトの実行には承認が必要ですので「承認」ボタンを押します。
また、スクリプトからGoogleカレンダーにアクセスするためには、カレンダーを読まれるアカウントでの許可が必要です。今回は、既にログインしているユーザー自身のカレンダー読み取りですので、そのまま「アクセスを許可」ボタンを押します。
承認や許可を行った時は、スクリプトは実行されませんので、もう一度、三角印の「選択した関数を実行」ボタンを押してスクリプトを実行します。
Googleカレンダーに登録したイベントが以下のようなメールとして届けば、スクリプトは正常に動作しています。
【参考にしたサイト】
Calendar Services > Class CalendarApp > method getEvents(startDate, endDate, optStatus)
http://code.google.com/intl/ja/googleapps/appsscript/class_calendarapp.html#getEvents
Calendar Services > Class CalendarApp > method getEventsForDay(date)
http://code.google.com/intl/ja/googleapps/appsscript/class_calendarapp.html#getEventsForDay
Utilities Services > Class Utilities > method formatDate(date, timeZone, format)
http://code.google.com/intl/ja/googleapps/appsscript/class_utilities.html#formatDate
【ハマった個所】
Googleのサイトの例は、以下の通りでした。
Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd'T'HH:mm:ss'Z'");
上記から分かることは、グリニッジ標準時に変換するのであれば、GMT(Greenwich Mean Time)を指定しなさいという事。では、日本時間に変換したい場合はどうすればいいのでしょうか。参考にしてサイトでは一切触れていません。こんな時は、調べるよりも試してみる方が早いですね。一般に、日本標準時は世界標準時より9時間進んでいるため「+0900(JST)」のように表示されます。JSTとは Japan Standard Time の略。そこで、GMT の部分をとりあえず JST に変更して試してみたら見事に日本時間に変換されました。
【おまけ】新ブログを開設しました。
『ExcelユーザーのためのGoogleスプレッドシート入門』
Excelはフツーに使えるよという方でも、Googleスプレッドシートを使った時にはアレッと思うことが結構あるものです。そういう方々向けの企画です。
0 件のコメント:
コメントを投稿