【发布时间】:2015-05-04 16:44:21
【问题描述】:
我真的可以使用一些帮助,我非常感谢任何人可以提供的任何指点。我知道还有其他一些类似的问题,但据我所知,没有其他人有这个特定问题/要求。
我有一个由三个不同的人协作处理的 Google 表格。我有这个通知脚本,它将通过电子邮件通知特定用户关于 F 列中任何单元格的 任何 更改。重要的是,此电子邮件通知还包含该行中已更改其 F 单元格值的 A 单元格的值。
但是,我真正想要实现的是一个通知脚本,当 F 列中的任何单元格在主表的 Sheet2 中具有“是”的新值时,它将向指定的人发送电子邮件仅表。
我目前的代码是(当 F 列发生任何变化时发送通知):
function sendNotification(e) {
var received = e.value; //Gets the value of the edited cell
};
function sendNotification() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet 2");
var cell = ss.getActiveCell().getA1Notation();
var row = sheet.getActiveRange().getRow();
var cellvalue = ss.getActiveCell().getValue().toString();
var received = ss.getRange('F2:F').getValue();
var recipients = "example@gmail.com";
var message = '';
if(received==="Yes"){
message = sheet.getRange('A'+ sheet.getActiveCell().getRowIndex()).getValue()
var subject = 'A cell value '+ sheet.getRange('A'+ sheet.getActiveCell().getRowIndex()).getValue() + ' has been received';
var body = sheet.getName() + ' has been updated. Visit ' + ss.getUrl() + ' to view the changes on row: «' + row + '». New comment: «' + cellvalue + '». For message: «' + message + '»';
MailApp.sendEmail(recipients, subject, body)};
Logger.log('received value: ' + received);
};
【问题讨论】:
-
使用
Logger.log('received value: ' + received);语句检查received变量的值。运行代码,然后在 VIEW 菜单中,选择 LOGS。 -
我刚刚添加并检查了日志并看到了这个:
[15-05-04 10:59:50:200 MDT] received value: No然后我更改了工作表中的值,日志显示为:[15-05-04 10:57:49:470 MDT] received value: Yes
标签: google-apps-script google-apps