Javascript 在使用Google Sheets时,当添加一行并编辑该行时,我应该使用什么代码发送电子邮件?
我是一个非常新的编码,但试图添加代码,当我们的编程谷歌表更新时,自动向某些工作人员发送电子邮件。电子邮件的实例包括: -添加了一个新行,这意味着我们的节目中添加了一个新节目 -一行已被编辑,这意味着新信息已添加到特定列中,用于营销、节目可以销售等 我试过用科学怪人来解释一些密码或者修改一些样本。要么代码不起作用(找不到源代码是一个常见问题),要么每当工作表上任何地方有编辑时,它都会发送一封电子邮件,而我只关心某些列 我最接近的是这段代码,但每次编辑它都会发送一封电子邮件。我只需要添加行和编辑特定列的时间Javascript 在使用Google Sheets时,当添加一行并编辑该行时,我应该使用什么代码发送电子邮件?,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我是一个非常新的编码,但试图添加代码,当我们的编程谷歌表更新时,自动向某些工作人员发送电子邮件。电子邮件的实例包括: -添加了一个新行,这意味着我们的节目中添加了一个新节目 -一行已被编辑,这意味着新信息已添加到特定列中,用于营销、节目可以销售等 我试过用科学怪人来解释一些密码或者修改一些样本。要么代码不起作用(找不到源代码是一个常见问题),要么每当工作表上任何地方有编辑时,它都会发送一封电子邮件,而我只关心某些列 我最接近的是这段代码,但每次编辑它都会发送一封电子邮件。我只需要添加行和编辑特定
function SendEmail() {
var ActiveSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var StartRow = 4;
var RowRange = ActiveSheet.getLastRow() - StartRow + 1;
var WholeRange = ActiveSheet.getRange(StartRow,1,RowRange,5);
var AllValues = WholeRange.getValues();
var message = "";
for (i in AllValues) {
var CurrentRow = AllValues[i];
var EmailSent = CurrentRow[5];
var Sender = CurrentRow[1];
message =
"A Show has been added."
var setRow = parseInt(i) + StartRow;
}
var SendTo = "myemail.com";
var Subject = "Show Added on MySheet";
MailApp.sendEmail({
to: SendTo,
subject: Subject,
htmlBody: message,
});
}
非常感谢您的帮助。谢谢。onEdit(e){
onEdit(e) {
const sh=e.range.getSheet();
if(sh.getName()=='Your sheet name' && e.range.rowStart>3 &&
e.rangeColumnnStart<7) {
SendEmail();
}
}
function SendEmail() {
const ss = SpreadsheetApp.getActive();
const sh = ss.getActiveSheet();
const sr = 4;
const RowRange = sh.getLastRow() - sr + 1;
const WholeRange = sh.getRange(sh, 1, RowRange, 6);
const AllValues = WholeRange.getValues();
const message = "A Show has been added.";
const SendTo = "myemail.com";
const Subject = "Show Added on MySheet";
for (let i=0;i<AllValues.length;i++) {
let CurrentRow = AllValues[i];
let EmailSent = CurrentRow[5];
let Sender = CurrentRow[1];
let setRow = parseInt(i) + sr;
if(CurrentRow[5]!='Sent') {
MailApp.sendEmail({to: SendTo,subject: Subject,htmlBody: message});
sh.getRange(i+sr,6).setValue('Sent');
}
}
}
const sh=e.range.getSheet();
如果(sh.getName()=='Your sheet name'&&e.range.rowStart>3&&
e、 RangeColumnStart我是否也复制了中的第一位,以及在哪里?谢谢!