いつもお世話になっております。
色々、調べてみたのですが答えが見つからなかったため、お手数をおかけいたしますがご相談させてください。
Googleフォームの入力内容をGmailに転送するスクリプトを以下のサイトを参考に作成しました。
【GAS】Googleフォームに複数の添付ファイル特定の送信先に送る
ただ1点、私はフォームで添付ファイルのアップロードの質問項目を「必須でない」としたため、アップロードをせずに送信してしまうと以下のエラーメッセージが出てしまいました。
**Exception: 無効な引数: attachments at sendForm
**
そこで、ファイルをアップロードした場合と、しなかった場合とで分岐条件(if文)の設定をすべきかなというところまでは考えが及んだのですが、**「attachments」という因数をどう処理すべきなのか?**が分かりませんでした。
つきましては、簡単で結構ですのでフォームの回答が「未回答」だった場合の対処方法(ファイルアップロードを添付せずにメールを送る)についてご教授いただけないでしょうか?
何とぞよろしくお願いいたします。
function sendForm(e) { // const to = "futoshita.hiroshi@gmail.com" const to = e.response.getRespondentEmail() //「このフォームでは回答者のメールアドレスを収集しています。」のメアド // 件名 const subject = "報告メールです" // 本文 let body = "本日もお疲れさまでした。今日も無事、営業を終了いたしました。" let itemResponses = e.response.getItemResponses() let attachImg = "" for (var i = 0; i < itemResponses.length; i++) { var itemResponse = itemResponses[i]; var question = itemResponse.getItem().getTitle(); var answer = itemResponse.getResponse(); if (question == "添付画像") { attachImg = DriveApp.getFileById(answer).getBlob(); } // 回答項目 body += "\n\n【" + question + "】\n\n"; // 回答内容 body += "共有画像"; } let options = { "attachments": [attachImg] } MailApp.sendEmail(to, subject, body, options) }

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/04/01 12:09