Google apps script 谷歌应用程序脚本-通过编辑链接发送电子邮件
我正在创建一个脚本,在您发送表单后立即发送自定义电子邮件。它工作得很好,但我希望它也能工作,当我编辑表单时,它会发送一封带有所做更改的自动电子邮件Google apps script 谷歌应用程序脚本-通过编辑链接发送电子邮件,google-apps-script,google-sheets,gmail,Google Apps Script,Google Sheets,Gmail,我正在创建一个脚本,在您发送表单后立即发送自定义电子邮件。它工作得很好,但我希望它也能工作,当我编辑表单时,它会发送一封带有所做更改的自动电子邮件 function Initialize() { var triggers = ScriptApp.getProjectTriggers(); for (var i in triggers) ScriptApp.deleteTrigger(triggers[i]); ScriptApp.newT
function Initialize() {
var triggers = ScriptApp.getProjectTriggers();
for (var i in triggers)
ScriptApp.deleteTrigger(triggers[i]);
ScriptApp.newTrigger("SendGoogleForm")
.forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
.onFormSubmit().create();
}
function SendGoogleForm(e) {
var s = SpreadsheetApp.getActiveSheet();
var headers = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message = "Please paste this!\n\n";
var subject = "Email: ID: ";
var email = "";
//
var form = FormApp.openById('*******************'); //this is the ID in the url of your live form
var formResponses = form.getResponses();
//
for (var i = 0; i < formResponses.length; i++) {
var formResponse = formResponses[i];
}
for(var i in headers) {
if ( e.namedValues[headers[i]].toString() != "") {
message += headers[i] + ': '+ e.namedValues[headers[i]].toString() + "\n";
}
}
subject += e.namedValues[headers[2]].toString();
email += e.namedValues[headers[1]].toString();
message += "Edit Link: " + formResponse.getEditResponseUrl();
MailApp.sendEmail(email, subject, message);
}
函数初始化(){
var triggers=ScriptApp.getProjectTriggers();
for(触发器中的var i)
ScriptApp.deleteTrigger(触发器[i]);
ScriptApp.newTrigger(“SendGoogleForm”)
.forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
.onFormSubmit().create();
}
函数SendGoogleForm(e){
var s=SpreadsheetApp.getActiveSheet();
var headers=s.getRange(1,1,1,s.getLastColumn()).getValues()[0];
var message=“请粘贴此!\n\n”;
var subject=“电子邮件:ID:”;
var email=“”;
//
var form=FormApp.openById('*****************');//这是live表单url中的ID
var formResponses=form.getResponses();
//
对于(var i=0;i
我发现了一个脚本,可以在编辑时帮助发送电子邮件,但我不确定如何实现它(在google docs论坛中找到):
函数checkResponse(){
var ss=SpreadsheetApp.getActiveSpreadsheet();
var s=ss.getSheetByName('Form Responses 1');
var lastRow=s.getLastRow();
var range=s.getRange('A'+lastRow+':C'+lastRow);
var notes=range.getNotes();
var values=range.getValues();
var changedFlag=null;
变量体=“”;
对于(var i=0;i
有人能帮忙吗?有人能帮忙吗?
function checkResponse() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('Form Responses 1');
var lastRow = s.getLastRow();
var range = s.getRange('A' + lastRow + ':C' + lastRow);
var notes = range.getNotes();
var values = range.getValues();
var changedFlag = null;
var body = '';
for (var i = 0; i < notes[0].length; i++ ) {
if ( notes[0][i] == 'Responder updated this value.' ) {
changedFlag = true;
// We know only to send the changed values
// Add changed value to email msg
body += values[0][i];
// May also want to clear the note as it remains after future edits of other values as well
s.getRange(lastRow, i).clearNote();
}
}
if ( !changedFlag ) {
// Email the whole row of values
for (var i = 0; i < values.length; i++) {
body += values[0][i];
}
}
GmailApp.sendEmail(recipient, subject, body)
}