仅当 G 列为 Y 时,才向 L 列中的地址发送电子邮件
Send an e-mail for an address on column L only if column G is Y
你们能帮帮我吗?我完全是菜鸟,所以非常感谢您的帮助:)
我正在尝试为电子表格创建一个脚本,每次在同一行上,第 G
列是 Y
.
例如:
如果将 G9
编辑为 Y
,则会向 L9
上指定的地址发送电子邮件。
目前,我正在尝试下面的脚本,但它不起作用:
function onEditTrigger(e){
var range = e.range;
var intCol = range.getColumn();
if (intCol == 7){
var intRow = range.getRow();
var sheet = SpreadsheetApp.getActiveSheet();
var dataRange = sheet.getRange(intRow, 12, 11, 8);
var dataValues = dataRange.getValues();
MailApp.sendEmail(dataValues[0][0], "Notification", "Value in column C: "
+ dataValues[0][2]);
}
}
错误:
"TypeError: Cannot read property "range" from undefined. (line 2, file "send e-mail")"
您的代码工作正常,但我发现了一些问题。
你不说但是当你得到错误时你是在使用调试器吗?请注意,事件对象 (e)
仅在触发触发器时才接收信息。也就是说,如果您尝试使用调试器测试 onEdit(e)
函数,则不会将任何信息传递给 (e)
,因为触发器尚未触发。
阅读 Google Documentation,特别是有关限制的部分。它说的是
They [simple triggers] cannot access services that require authorization. For example, a simple trigger cannot send an email because the Gmail service requires authorization, but a simple trigger can translate a phrase with the Language service, which is anonymous.
因此,为了让您的脚本正常工作,您需要转到“编辑”->“当前项目的触发器”并创建一个 onEdit 触发器
你们能帮帮我吗?我完全是菜鸟,所以非常感谢您的帮助:)
我正在尝试为电子表格创建一个脚本,每次在同一行上,第 G
列是 Y
.
例如:
如果将 G9
编辑为 Y
,则会向 L9
上指定的地址发送电子邮件。
目前,我正在尝试下面的脚本,但它不起作用:
function onEditTrigger(e){
var range = e.range;
var intCol = range.getColumn();
if (intCol == 7){
var intRow = range.getRow();
var sheet = SpreadsheetApp.getActiveSheet();
var dataRange = sheet.getRange(intRow, 12, 11, 8);
var dataValues = dataRange.getValues();
MailApp.sendEmail(dataValues[0][0], "Notification", "Value in column C: "
+ dataValues[0][2]);
}
}
错误:
"TypeError: Cannot read property "range" from undefined. (line 2, file "send e-mail")"
您的代码工作正常,但我发现了一些问题。
你不说但是当你得到错误时你是在使用调试器吗?请注意,事件对象
(e)
仅在触发触发器时才接收信息。也就是说,如果您尝试使用调试器测试onEdit(e)
函数,则不会将任何信息传递给(e)
,因为触发器尚未触发。阅读 Google Documentation,特别是有关限制的部分。它说的是
They [simple triggers] cannot access services that require authorization. For example, a simple trigger cannot send an email because the Gmail service requires authorization, but a simple trigger can translate a phrase with the Language service, which is anonymous.
因此,为了让您的脚本正常工作,您需要转到“编辑”->“当前项目的触发器”并创建一个 onEdit 触发器