質問編集履歴

4

文章追記修正

2023/04/12 23:14

投稿

ch-taros164
ch-taros164

スコア2

test CHANGED
File without changes
test CHANGED
@@ -8,28 +8,28 @@
8
8
  一度実装ができたので、フォームの入力形式を少々変更し再度実装に挑んでいる最中でした。
9
9
 
10
10
  ### 発生している問題・エラーメッセージ
11
-
11
+ やはり9行目でエラーが出ます、、、
12
12
 
13
13
  ### 該当のソースコード
14
14
  今実装中のコード
15
15
  function createEvent(e) {
16
- //エラー防止のため、以下の5行を追加
16
+ //エラー防止のため、以下の5行を追加
17
- if (e === undefined) {
17
+ if (e === undefined) {
18
- console.log('このスクリプトは、エディタから実行できません。');
18
+ console.log('このスクリプトは、エディタから実行できません。');
19
- console.log('フォームに回答してみてください。');
19
+ console.log('フォームに回答してみてください。');
20
- return;
20
+ return;
21
- }
21
+ }
22
- const items = [];
22
+ const items = [];
23
- const itemResponses = getItemResponses();
23
+ const itemResponses = e.response.getItemResponses();
24
- for (const itemResponse of itemResponses) {
24
+ for (const itemResponse of itemResponses) {
25
- items.push(itemResponse.getResponse());
25
+ items.push(itemResponse.getResponse());
26
- }
26
+ }
27
- let [timestamp, abouttime, YYYY, MM, DD, hoursS, minutesS, hoursE, minutesE] = items;
27
+ let [ abouttime, YYYY, MM, DD, hoursS, minutesS, hoursE, minutesE] = items;
28
- let id = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
28
+ let id = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@group.calendar.google.com';
29
- let calendar = CalendarApp.getCalendarById(id);
29
+ let calendar = CalendarApp.getCalendarById(id);
30
- let title = `${abouttime}`;
30
+ let title = abouttime;
31
- let startTime = new Date(`${YYYY}`+`${MM}`+`${DD}`+ `${hoursS}`+ `${minutesS}`);
31
+ let startTime = new Date(YYYY + MM + DD + hoursS + minutesS);
32
- let endTime = new Date(`${YYYY}`+`${MM}`+`${DD}`+ `${hoursE}`+ `${minutesE}`);
32
+ let endTime = new Date(YYYY + MM + DD + hoursE + minutesE);
33
33
  // ▼勤務内容
34
34
  // 送信日時: ${timestamp}
35
35
  // 勤務日: ${YYYY}/${MM}/${DD}
@@ -37,77 +37,7 @@
37
37
  // 終了時間: ${hoursE}:${minutesE}
38
38
  // 時間帯: ${abouttime}`;
39
39
 
40
- calendar.createEvent(title, startTime, endTime);
40
+ calendar.createEvent(title, startTime, endTime);
41
41
  }
42
42
 
43
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
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-04-13/a78ea939-e1a6-44b6-90cf-d7d2fd17cefb.png)
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
-
113
-

3

今現在のソースコードを追記しました

2023/04/12 22:48

投稿

ch-taros164
ch-taros164

スコア2

test CHANGED
File without changes
test CHANGED
@@ -12,6 +12,36 @@
12
12
 
13
13
  ### 該当のソースコード
14
14
  今実装中のコード
15
+ function createEvent(e) {
16
+ //エラー防止のため、以下の5行を追加
17
+ if (e === undefined) {
18
+ console.log('このスクリプトは、エディタから実行できません。');
19
+ console.log('フォームに回答してみてください。');
20
+ return;
21
+ }
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番目のコード
15
45
  function createEvent(e) {
16
46
  //エラー防止のため、以下の5行を追加
17
47
  if (e === undefined) {

2

実装試し後、更に改良検討中でした

2023/04/12 20:33

投稿

ch-taros164
ch-taros164

スコア2

test CHANGED
File without changes
test CHANGED
@@ -5,18 +5,47 @@
5
5
  GASを使って、Googleカレンダーへ予定を作成する
6
6
 
7
7
  ### 前提
8
- GAS初心者です。
9
- 上記の実装中に以下エラメッセージが発生した。
8
+ 一度実装ができたで、フォムの入力形式を少々変更再度実装に挑んでいる最中でした。
10
- chromeのバージョンは最新です。
11
- iPhoneブラウザから送信した内容も下記エラーとなりました。
12
9
 
13
10
  ### 発生している問題・エラーメッセージ
14
11
 
12
+
13
+ ### 該当のソースコード
14
+ 今実装中のコード
15
+ function createEvent(e) {
16
+ //エラー防止のため、以下の5行を追加
17
+ if (e === undefined) {
18
+ console.log('このスクリプトは、エディタから実行できません。');
19
+ console.log('フォームに回答してみてください。');
20
+ return;
21
+ }
15
- この実行に関するログはありません
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}
16
- 最近の実行に関するログの取得で、遅延が発生している可能性があります。
39
+ // 時間帯: ${abouttime}`;
40
+
41
+ calendar.createEvent(title, startTime, endTime);
42
+ }
43
+
44
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-04-13/a78ea939-e1a6-44b6-90cf-d7d2fd17cefb.png)
17
45
 
18
46
 
47
+
19
- ### 該当ソースコード
48
+ 最初のコード
20
49
  function createEvent(e) {
21
50
  //エラー防止のため、以下の5行を追加
22
51
  if (e === undefined) {

1

文章追記

2023/04/12 15:28

投稿

ch-taros164
ch-taros164

スコア2

test CHANGED
File without changes
test CHANGED
@@ -5,7 +5,7 @@
5
5
  GASを使って、Googleカレンダーへ予定を作成する
6
6
 
7
7
  ### 前提
8
-
8
+ GAS初心者です。
9
9
  上記の実装中に以下のエラーメッセージが発生しました。
10
10
  chromeのバージョンは最新です。
11
11
  iPhoneブラウザから送信した内容も下記エラーとなりました。