GoogleスプレッドシートからGoogleカレンダーに予定を作成するスクリプトを作っています。
使用するカレンダーのIDを特定のセルにあらかじめ記入しておき、そのカレンダーに対して予定を作成する仕様で、
1 var calendar_id = sheet.getRange(6,9).getValues(); //I6セルに入力されているカレンダーIDを取得 2 var calendar = CalendarApp.getCalendarById(calendar_id); //カレンダーIDから使用するカレンダーを決定 3 var startTime = new Date(); //現在時刻を予定の開始時刻に指定 4 var hour = 3; //指定した数字×時間分の予定を作成(とりあえず3時間を指定) 5 var endTime = new Date(startTime.getTime() + (hour * 60 * 60 * 1000)); //hourに指定した時間後を終了時刻に指定 6 var event = CalendarApp.createEvent(ss_name, startTime, endTime); //タイトル、開始時刻、終了時刻を指定して予定を作成 7 var event_id = event.getId(); //作成した予定のイベントIDを取得
このようなコードを組んで実行したところ、無事指定したカレンダーに予定が作成されました。
その後、カレンダーIDを記入するセルが空欄になっていたり無効な文字列が入っていた場合の動作を確認しようと思い、セルを空欄にしてからスクリプトを実行しました。
何らかのエラーが表示されると予想していたのですが、デフォルトカレンダーに予定が作成されてしまいました。空欄ではなく、違う文字列(Googleと関係のないメールアドレス)を入力して実行してもやはりデフォルトカレンダーに予定が作成されます。
カレンダーIDを指定するセルに無効な値が入っていたときや空欄だった場合にエラーメッセージを出して処理を終了するようにしたいのですが、どのようにすれば良いのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/28 00:59