実現したいこと
Googleフォームから送信した内容で
スプレッドシートに反映された回答内容から
GASを使って、Googleカレンダーへ予定を作成する
前提
一度実装ができたので、フォームの入力形式を少々変更し再度実装に挑んでいる最中でした。
発生している問題・エラーメッセージ
やはり9行目でエラーが出ます、、、
該当のソースコード
今実装中のコード
function createEvent(e) {
//エラー防止のため、以下の5行を追加
if (e === undefined) {
console.log('このスクリプトは、エディタから実行できません。');
console.log('フォームに回答してみてください。');
return;
}
const items = [];
const itemResponses = e.response.getItemResponses();
for (const itemResponse of itemResponses) {
items.push(itemResponse.getResponse());
}
let [ abouttime, YYYY, MM, DD, hoursS, minutesS, hoursE, minutesE] = items;
let id = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
let calendar = CalendarApp.getCalendarById(id);
let title = abouttime;
let startTime = new Date(YYYY + MM + DD + hoursS + minutesS);
let endTime = new Date(YYYY + MM + DD + hoursE + minutesE);
// ▼勤務内容
// 送信日時: ${timestamp}
// 勤務日: ${YYYY}/${MM}/${DD}
// 開始時間: ${hoursS}:${minutesS}
// 終了時間: ${hoursE}:${minutesE}
// 時間帯: ${abouttime}`;
calendar.createEvent(title, startTime, endTime);
}

回答2件
あなたの回答
tips
プレビュー