質問編集履歴
4
文章追記修正
    
        title	
    CHANGED
    
    | 
            File without changes
         | 
    
        body	
    CHANGED
    
    | @@ -8,28 +8,28 @@ | |
| 8 8 | 
             
            一度実装ができたので、フォームの入力形式を少々変更し再度実装に挑んでいる最中でした。
         | 
| 9 9 |  | 
| 10 10 | 
             
            ### 発生している問題・エラーメッセージ
         | 
| 11 | 
            +
            やはり9行目でエラーが出ます、、、
         | 
| 11 12 |  | 
| 12 | 
            -
             | 
| 13 13 | 
             
            ### 該当のソースコード
         | 
| 14 14 | 
             
            今実装中のコード
         | 
| 15 15 | 
             
            function createEvent(e) {
         | 
| 16 | 
            -
             | 
| 16 | 
            +
            //エラー防止のため、以下の5行を追加
         | 
| 17 | 
            -
             | 
| 17 | 
            +
            if (e === undefined) {
         | 
| 18 | 
            -
             | 
| 18 | 
            +
            console.log('このスクリプトは、エディタから実行できません。');
         | 
| 19 | 
            -
             | 
| 19 | 
            +
            console.log('フォームに回答してみてください。');
         | 
| 20 | 
            -
             | 
| 20 | 
            +
            return;
         | 
| 21 | 
            -
             | 
| 21 | 
            +
            }
         | 
| 22 | 
            -
             | 
| 22 | 
            +
            const items = [];
         | 
| 23 | 
            -
             | 
| 23 | 
            +
            const itemResponses = e.response.getItemResponses();
         | 
| 24 | 
            -
             | 
| 24 | 
            +
            for (const itemResponse of itemResponses) {
         | 
| 25 | 
            -
             | 
| 25 | 
            +
            items.push(itemResponse.getResponse());
         | 
| 26 | 
            -
             | 
| 26 | 
            +
            }
         | 
| 27 | 
            -
             | 
| 27 | 
            +
            let [ abouttime, YYYY, MM, DD, hoursS, minutesS, hoursE, minutesE] = items;
         | 
| 28 | 
            -
             | 
| 28 | 
            +
            let id = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
         | 
| 29 | 
            -
             | 
| 29 | 
            +
            let calendar = CalendarApp.getCalendarById(id);
         | 
| 30 | 
            -
             | 
| 30 | 
            +
            let title = abouttime;
         | 
| 31 | 
            -
             | 
| 31 | 
            +
            let startTime = new Date(YYYY + MM + DD + hoursS + minutesS);
         | 
| 32 | 
            -
             | 
| 32 | 
            +
            let endTime = new Date(YYYY + MM + DD + hoursE + minutesE);
         | 
| 33 33 | 
             
            // ▼勤務内容
         | 
| 34 34 | 
             
            // 送信日時: ${timestamp}
         | 
| 35 35 | 
             
            // 勤務日: ${YYYY}/${MM}/${DD}
         | 
| @@ -37,76 +37,6 @@ | |
| 37 37 | 
             
            // 終了時間: ${hoursE}:${minutesE}
         | 
| 38 38 | 
             
            // 時間帯: ${abouttime}`;
         | 
| 39 39 |  | 
| 40 | 
            -
             | 
| 40 | 
            +
            calendar.createEvent(title, startTime, endTime);
         | 
| 41 41 | 
             
            }
         | 
| 42 42 |  | 
| 43 | 
            -
             | 
| 44 | 
            -
            2番目のコード
         | 
| 45 | 
            -
            function createEvent(e) {
         | 
| 46 | 
            -
              //エラー防止のため、以下の5行を追加
         | 
| 47 | 
            -
              if (e === undefined) {
         | 
| 48 | 
            -
                console.log('このスクリプトは、エディタから実行できません。');
         | 
| 49 | 
            -
                console.log('フォームに回答してみてください。');
         | 
| 50 | 
            -
                return;
         | 
| 51 | 
            -
              }
         | 
| 52 | 
            -
              const items = [];
         | 
| 53 | 
            -
              let [timestamp, yyyy, mm, dd, hoursS, minutesS, hoursE, minutesE, abouttime] = items;
         | 
| 54 | 
            -
              // let [timestamp, yyyy, mm, dd, hoursS, minutesS, hoursE, minutesE, abouttime] = e.values;
         | 
| 55 | 
            -
              let id = '![xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]@group.calendar.google.com';
         | 
| 56 | 
            -
              let calendar = CalendarApp.getCalendarById(id);
         | 
| 57 | 
            -
              let title = `${abouttime}`;
         | 
| 58 | 
            -
             | 
| 59 | 
            -
              // let startTime = new Date(date + ' ' + time1);//' 'の中は、半角スペース
         | 
| 60 | 
            -
              // let endTime = new Date(date + ' ' + time2);
         | 
| 61 | 
            -
              
         | 
| 62 | 
            -
              let startTime = new Date(yyyy, mm, dd, hoursS, minutesS);
         | 
| 63 | 
            -
              let endTime = new Date(yyyy, mm, dd, hoursE, minutesE);
         | 
| 64 | 
            -
            // `▼勤務内容
         | 
| 65 | 
            -
            // 送信日時: ${timestamp}
         | 
| 66 | 
            -
            // 勤務日: ${yyyy}/${mm}/${dd}
         | 
| 67 | 
            -
            // 開始時間: ${hoursS}:${minutesS}
         | 
| 68 | 
            -
            // 終了時間: ${hoursE}:${minutesE}
         | 
| 69 | 
            -
            // 時間帯: ${abouttime}`;
         | 
| 70 | 
            -
             | 
| 71 | 
            -
             calendar.createEvent(title, startTime, endTime);
         | 
| 72 | 
            -
            }
         | 
| 73 | 
            -
             | 
| 74 | 
            -
            
         | 
| 75 | 
            -
             | 
| 76 | 
            -
             | 
| 77 | 
            -
             | 
| 78 | 
            -
            最初のコード
         | 
| 79 | 
            -
            function createEvent(e) {
         | 
| 80 | 
            -
              //エラー防止のため、以下の5行を追加
         | 
| 81 | 
            -
              if (e === undefined) {
         | 
| 82 | 
            -
                console.log('このスクリプトは、エディタから実行できません。');
         | 
| 83 | 
            -
                console.log('フォームに回答してみてください。');
         | 
| 84 | 
            -
                return;
         | 
| 85 | 
            -
              }
         | 
| 86 | 
            -
              const items = [];
         | 
| 87 | 
            -
              let [timestamp, date, time1, time2] = items;
         | 
| 88 | 
            -
              let id = 'xxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
         | 
| 89 | 
            -
              let calendar = CalendarApp.getCalendarById(id);
         | 
| 90 | 
            -
              let title = `xxxxx`;
         | 
| 91 | 
            -
             | 
| 92 | 
            -
              // let y = Number(date.split('年')[0]);
         | 
| 93 | 
            -
              // let m = Number(date.split('年')[1].split('月')[0]) - 1;
         | 
| 94 | 
            -
              // let d = Number(date.split('月')[1].split('日')[0]);
         | 
| 95 | 
            -
              // let hoursS = Number(time1.split(':')[0]);
         | 
| 96 | 
            -
              // let minutesS = Number(time1.split(':')[1]);
         | 
| 97 | 
            -
              // let hoursE = Number(time2.split(':')[0]);
         | 
| 98 | 
            -
              // let minutesE = Number(time2.split(':')[1]);
         | 
| 99 | 
            -
              // let startTime = new Date(y, m, d, hoursS, minutesS);
         | 
| 100 | 
            -
              // let endTime = new Date(y, m, d, hoursE, minutesE);
         | 
| 101 | 
            -
              let startTime = new Date(date + ' ' + time1);//' 'の中は、半角スペース
         | 
| 102 | 
            -
              let endTime = new Date(date + ' ' + time2);
         | 
| 103 | 
            -
             | 
| 104 | 
            -
            `▼勤務内容
         | 
| 105 | 
            -
            送信日時: ${timestamp}
         | 
| 106 | 
            -
            勤務日: ${date}
         | 
| 107 | 
            -
            開始時間: ${time1}
         | 
| 108 | 
            -
            終了時間: ${time2}`;
         | 
| 109 | 
            -
             | 
| 110 | 
            -
             calendar.createEvent(title, startTime, endTime);
         | 
| 111 | 
            -
            }
         | 
| 112 | 
            -
             | 
3
今現在のソースコードを追記しました
    
        title	
    CHANGED
    
    | 
            File without changes
         | 
    
        body	
    CHANGED
    
    | @@ -20,6 +20,36 @@ | |
| 20 20 | 
             
                return;
         | 
| 21 21 | 
             
              }
         | 
| 22 22 | 
             
              const items = [];
         | 
| 23 | 
            +
              const itemResponses = getItemResponses();
         | 
| 24 | 
            +
              for (const itemResponse of itemResponses) {
         | 
| 25 | 
            +
              items.push(itemResponse.getResponse());
         | 
| 26 | 
            +
              }
         | 
| 27 | 
            +
              let [timestamp, abouttime, YYYY, MM, DD, hoursS, minutesS, hoursE, minutesE] = items;
         | 
| 28 | 
            +
              let id = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
         | 
| 29 | 
            +
              let calendar = CalendarApp.getCalendarById(id);
         | 
| 30 | 
            +
              let title = `${abouttime}`;
         | 
| 31 | 
            +
              let startTime = new Date(`${YYYY}`+`${MM}`+`${DD}`+ `${hoursS}`+ `${minutesS}`);
         | 
| 32 | 
            +
              let endTime = new Date(`${YYYY}`+`${MM}`+`${DD}`+ `${hoursE}`+ `${minutesE}`);
         | 
| 33 | 
            +
            // ▼勤務内容
         | 
| 34 | 
            +
            // 送信日時: ${timestamp}
         | 
| 35 | 
            +
            // 勤務日: ${YYYY}/${MM}/${DD}
         | 
| 36 | 
            +
            // 開始時間: ${hoursS}:${minutesS}
         | 
| 37 | 
            +
            // 終了時間: ${hoursE}:${minutesE}
         | 
| 38 | 
            +
            // 時間帯: ${abouttime}`;
         | 
| 39 | 
            +
             | 
| 40 | 
            +
             calendar.createEvent(title, startTime, endTime);
         | 
| 41 | 
            +
            }
         | 
| 42 | 
            +
             | 
| 43 | 
            +
             | 
| 44 | 
            +
            2番目のコード
         | 
| 45 | 
            +
            function createEvent(e) {
         | 
| 46 | 
            +
              //エラー防止のため、以下の5行を追加
         | 
| 47 | 
            +
              if (e === undefined) {
         | 
| 48 | 
            +
                console.log('このスクリプトは、エディタから実行できません。');
         | 
| 49 | 
            +
                console.log('フォームに回答してみてください。');
         | 
| 50 | 
            +
                return;
         | 
| 51 | 
            +
              }
         | 
| 52 | 
            +
              const items = [];
         | 
| 23 53 | 
             
              let [timestamp, yyyy, mm, dd, hoursS, minutesS, hoursE, minutesE, abouttime] = items;
         | 
| 24 54 | 
             
              // let [timestamp, yyyy, mm, dd, hoursS, minutesS, hoursE, minutesE, abouttime] = e.values;
         | 
| 25 55 | 
             
              let id = '![xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]@group.calendar.google.com';
         | 
2
実装試し後、更に改良検討中でした
    
        title	
    CHANGED
    
    | 
            File without changes
         | 
    
        body	
    CHANGED
    
    | @@ -5,18 +5,13 @@ | |
| 5 5 | 
             
            GASを使って、Googleカレンダーへ予定を作成する
         | 
| 6 6 |  | 
| 7 7 | 
             
            ### 前提
         | 
| 8 | 
            -
            GAS初心者です。
         | 
| 9 | 
            -
             | 
| 8 | 
            +
            一度実装ができたので、フォームの入力形式を少々変更し再度実装に挑んでいる最中でした。
         | 
| 10 | 
            -
            chromeのバージョンは最新です。
         | 
| 11 | 
            -
            iPhoneブラウザから送信した内容も下記エラーとなりました。
         | 
| 12 9 |  | 
| 13 10 | 
             
            ### 発生している問題・エラーメッセージ
         | 
| 14 11 |  | 
| 15 | 
            -
            この実行に関するログはありません
         | 
| 16 | 
            -
            最近の実行に関するログの取得で、遅延が発生している可能性があります。
         | 
| 17 12 |  | 
| 18 | 
            -
             | 
| 19 13 | 
             
            ### 該当のソースコード
         | 
| 14 | 
            +
            今実装中のコード
         | 
| 20 15 | 
             
            function createEvent(e) {
         | 
| 21 16 | 
             
              //エラー防止のため、以下の5行を追加
         | 
| 22 17 | 
             
              if (e === undefined) {
         | 
| @@ -25,6 +20,40 @@ | |
| 25 20 | 
             
                return;
         | 
| 26 21 | 
             
              }
         | 
| 27 22 | 
             
              const items = [];
         | 
| 23 | 
            +
              let [timestamp, yyyy, mm, dd, hoursS, minutesS, hoursE, minutesE, abouttime] = items;
         | 
| 24 | 
            +
              // let [timestamp, yyyy, mm, dd, hoursS, minutesS, hoursE, minutesE, abouttime] = e.values;
         | 
| 25 | 
            +
              let id = '![xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]@group.calendar.google.com';
         | 
| 26 | 
            +
              let calendar = CalendarApp.getCalendarById(id);
         | 
| 27 | 
            +
              let title = `${abouttime}`;
         | 
| 28 | 
            +
             | 
| 29 | 
            +
              // let startTime = new Date(date + ' ' + time1);//' 'の中は、半角スペース
         | 
| 30 | 
            +
              // let endTime = new Date(date + ' ' + time2);
         | 
| 31 | 
            +
              
         | 
| 32 | 
            +
              let startTime = new Date(yyyy, mm, dd, hoursS, minutesS);
         | 
| 33 | 
            +
              let endTime = new Date(yyyy, mm, dd, hoursE, minutesE);
         | 
| 34 | 
            +
            // `▼勤務内容
         | 
| 35 | 
            +
            // 送信日時: ${timestamp}
         | 
| 36 | 
            +
            // 勤務日: ${yyyy}/${mm}/${dd}
         | 
| 37 | 
            +
            // 開始時間: ${hoursS}:${minutesS}
         | 
| 38 | 
            +
            // 終了時間: ${hoursE}:${minutesE}
         | 
| 39 | 
            +
            // 時間帯: ${abouttime}`;
         | 
| 40 | 
            +
             | 
| 41 | 
            +
             calendar.createEvent(title, startTime, endTime);
         | 
| 42 | 
            +
            }
         | 
| 43 | 
            +
             | 
| 44 | 
            +
            
         | 
| 45 | 
            +
             | 
| 46 | 
            +
             | 
| 47 | 
            +
             | 
| 48 | 
            +
            最初のコード
         | 
| 49 | 
            +
            function createEvent(e) {
         | 
| 50 | 
            +
              //エラー防止のため、以下の5行を追加
         | 
| 51 | 
            +
              if (e === undefined) {
         | 
| 52 | 
            +
                console.log('このスクリプトは、エディタから実行できません。');
         | 
| 53 | 
            +
                console.log('フォームに回答してみてください。');
         | 
| 54 | 
            +
                return;
         | 
| 55 | 
            +
              }
         | 
| 56 | 
            +
              const items = [];
         | 
| 28 57 | 
             
              let [timestamp, date, time1, time2] = items;
         | 
| 29 58 | 
             
              let id = 'xxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
         | 
| 30 59 | 
             
              let calendar = CalendarApp.getCalendarById(id);
         | 
1
文章追記
    
        title	
    CHANGED
    
    | 
            File without changes
         | 
    
        body	
    CHANGED
    
    | @@ -5,7 +5,7 @@ | |
| 5 5 | 
             
            GASを使って、Googleカレンダーへ予定を作成する
         | 
| 6 6 |  | 
| 7 7 | 
             
            ### 前提
         | 
| 8 | 
            -
             | 
| 8 | 
            +
            GAS初心者です。
         | 
| 9 9 | 
             
            上記の実装中に以下のエラーメッセージが発生しました。
         | 
| 10 10 | 
             
            chromeのバージョンは最新です。
         | 
| 11 11 | 
             
            iPhoneブラウザから送信した内容も下記エラーとなりました。
         | 
