次のフィールドを使用して簡単なGoogleフォームを作成しました。
名前、電子メール、給与、リクエスト。
ユーザーがフォームに記入したら、その情報を記載したメールを送信したいと思います。ただし、「リクエスト」フィールドを使用して、ユーザーがさらに対応する必要がある場合に参照できる一意の番号をプラグインしたいと思います。ユーザーが[リクエスト]フィールドに何かを入力した場合、それを破棄して、生成した番号(応答とスプレッドシートの両方)を使用します。
私が見つけた他の情報を使用して、スクリプトをつなぎ合わせることができました。ユーザーに返送される電子メール応答を除いて、すべてで機能するようです。-「要求」フィールドに使用する番号は含まれていませんが、代わりにユーザーが入力した入力を送り返します。リクエストフィールド。スプレッドシートは問題ないように見えます([リクエスト]フィールドに私の番号があります)。
これが私のスクリプトです:
function sendFormByEmail(e) {
var capsht = SpreadsheetApp.getActiveSheet();
var caprow = SpreadsheetApp.getActiveSheet().getLastRow();
capsht.getRange(caprow,5).setValue("Cap-"+caprow);
var admin = "admin@xxx.com";
try {
var recipient = e.namedValues["Email"];
var subject = "Capacity Request Form Received";
var s = SpreadsheetApp.getActiveSheet();
var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message = "";
for (var i in headers)
message += headers[i] + ' = '+ e.namedValues[headers[i]].toString() + "\n\n";
MailApp.sendEmail(recipient, subject, message);
}
catch (error) {
MailApp.sendEmail(admin, "Error with form submission response email", error.message);
}
}