質問編集履歴

1

構文追加いたします

2019/06/07 07:23

投稿

leomaru
leomaru

スコア12

test CHANGED
File without changes
test CHANGED
@@ -75,3 +75,231 @@
75
75
  私の知識ではどうにもできず、お教えいただけますと幸いです。
76
76
 
77
77
  宜しくお願いいたします。
78
+
79
+
80
+
81
+
82
+
83
+ ※追記事項※
84
+
85
+ 私の知識がなく、ネットからひっぱった構文の文字を変える程度しかできません。
86
+
87
+ 構文を作ることはできず、悩んでおりましたので、質問させていただきました。
88
+
89
+ 参加有無によって本文を変える方法が知りたいです。
90
+
91
+ 宜しくお願いいたします。
92
+
93
+
94
+
95
+
96
+
97
+ function sendMailGoogleForm() {
98
+
99
+ Logger.log('sendMailGoogleForm() debug start');
100
+
101
+
102
+
103
+ //------------------------------------------------------------
104
+
105
+ // 設定エリアここから
106
+
107
+ //------------------------------------------------------------
108
+
109
+
110
+
111
+ // 件名、本文、フッター(出席と回答してくれた人)
112
+
113
+ var subject = "[お回答ありがとうございます。]";
114
+
115
+ var body
116
+
117
+ = "ご回答ありがとうございます。\n\n"
118
+
119
+ + "------------------------------------------------------------\n";
120
+
121
+ var footer
122
+
123
+ (↑ここの内容はスプレッドシートで聞いている内容そのままでいいのですが、
124
+
125
+ スプレッドシートが
126
+
127
+ ①氏名
128
+
129
+ ②会社名
130
+
131
+ ③参加有無
132
+
133
+ となっているのを、返信メールでは
134
+
135
+
136
+
137
+ ③参加有無
138
+
139
+ ①氏名
140
+
141
+ ②会社名
142
+
143
+
144
+
145
+ としたいです)
146
+
147
+
148
+
149
+ = "------------------------------------------------------------\n\n"
150
+
151
+ + "後ほど担当者よりご連絡させていただきます。";
152
+
153
+
154
+
155
+
156
+
157
+ // 件名、本文、フッター(欠席と回答してくれた人)
158
+
159
+ var subject = "[お回答ありがとうございます。]";
160
+
161
+ var body
162
+
163
+ = "ご回答ありがとうございます。\n\n"
164
+
165
+ + "------------------------------------------------------------\n";
166
+
167
+ var footer
168
+
169
+ (↑
170
+
171
+ ③参加有無
172
+
173
+ だけとしたいです)
174
+
175
+
176
+
177
+ = "------------------------------------------------------------\n\n"
178
+
179
+ + "ご回答ありがとうございました。";
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+ // 入力カラム名の指定
194
+
195
+ var NAME_COL_NAME = '名前';
196
+
197
+ var MAIL_COL_NAME = 'メールアドレス';
198
+
199
+
200
+
201
+
202
+
203
+ // メール送信先
204
+
205
+ var admin = "admin@example.com"; // 管理者(必須)
206
+
207
+ var sendername = "web担当者備忘録";//送信者名(必須)
208
+
209
+ var cc = ""; // Cc:
210
+
211
+ var bcc = admin; // Bcc:
212
+
213
+ var reply = admin; // Reply-To:
214
+
215
+ var to = ""; // To: (入力者のアドレスが自動で入ります)
216
+
217
+
218
+
219
+
220
+
221
+ //------------------------------------------------------------
222
+
223
+ // 設定エリアここまで
224
+
225
+ //------------------------------------------------------------
226
+
227
+
228
+
229
+ try{
230
+
231
+ // スプレッドシートの操作
232
+
233
+ var sheet = SpreadsheetApp.getActiveSheet();
234
+
235
+ var rows = sheet.getLastRow();
236
+
237
+ var cols = sheet.getLastColumn();
238
+
239
+ var rg = sheet.getDataRange();
240
+
241
+ Logger.log("rows="+rows+" cols="+cols);
242
+
243
+
244
+
245
+ // メール件名・本文作成と送信先メールアドレス取得
246
+
247
+ for (var i = 1; i <= cols; i++ ) {
248
+
249
+ var col_name = rg.getCell(1, i).getValue(); // カラム名
250
+
251
+ var col_value = rg.getCell(rows, i).getValue(); // 入力値
252
+
253
+ body += "【"+col_name+"】\n";
254
+
255
+ body += col_value + "\n\n";
256
+
257
+ if ( col_name === NAME_COL_NAME ) {
258
+
259
+ body = col_value+" 様\n\n"+body;
260
+
261
+ }
262
+
263
+ if ( col_name === MAIL_COL_NAME ) {
264
+
265
+ to = col_value;
266
+
267
+ }
268
+
269
+ }
270
+
271
+ body += footer;
272
+
273
+
274
+
275
+ // 送信先オプション
276
+
277
+ var options = {name: sendername};
278
+
279
+ if ( cc ) options.cc = cc;
280
+
281
+ if ( bcc ) options.bcc = bcc;
282
+
283
+ if ( reply ) options.replyTo = reply;
284
+
285
+
286
+
287
+ // メール送信
288
+
289
+ if ( to ) {
290
+
291
+ MailApp.sendEmail(to, subject, body, options);
292
+
293
+ }else{
294
+
295
+ MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body);
296
+
297
+ }
298
+
299
+ }catch(e){
300
+
301
+ MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message);
302
+
303
+ }
304
+
305
+ }