【发布时间】:2020-09-10 13:03:30
【问题描述】:
我正在制作一个使用多个 =IMPORTXML 函数从网页导入不断变化的文本和价格值的电子表格。目前,我的 Google 表格中有以下列:
A:“网址信息”
B:“网址”
F-N:“价格”(每列中的价格值不同)
我有什么
通过 this page 上的脚本(感谢 Umesh Agarwal)在电子表格中进行更改后,我将收到一封电子邮件通知。一旦我在 F2:N200 范围内的单元格中进行更改,我将收到一封电子邮件,其中包含已更改的单元格。问题是,一旦具有 =importxml 函数值的单元格发生变化,我就有脚本向我发送一封包含已更改单元格的电子邮件。
此时,当单元格由于 =importxml 函数而发生更改时,脚本正在向我发送一封电子邮件,说明单元格 A1 已更改...它没有向我发送已更改的正确单元格,这使得我很难看看有什么变化。我该如何解决这个问题?
function sendEmailonEdit() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var cellValue = ss.getActiveSheet().getActiveRange().getA1Notation();
var getColumn = ss.getActiveSheet().getActiveRange().getColumn();
var sheetname = ss.getActiveSheet().getName();
var user = Session.getActiveUser().getEmail();
var Toemail = 'myemailid_1234@gmail.com';
var subject = 'New Entry in ' + data + '.' + ss.getName();
var body = 'Your file has a new entry in - ' + sheetname + ' Updated by - ' + user + data
' check file- ' + ss.getUrl();
if(data.indexOf('F2:N200')!=-1.23456789) {
MailApp.sendEmail(Toemail,subject, body);
}
};
【问题讨论】:
-
你应该看看Events。后者将允许您查看更改了哪个单元格并执行相应的操作。
标签: google-apps-script google-sheets notifications