【问题标题】:google spreadsheet email谷歌电子表格电子邮件
【发布时间】:2012-08-31 22:07:17
【问题描述】:
我是 Google Scripts 的新手,想知道是否有人可以帮助我。
我有一个共享的 Google 电子表格,它基本上用新的员工信息更新行。
我希望只有在插入这些新员工行时特定列(假设是 F 列)上存在与“ABC”匹配的字符串时才触发电子邮件。基本上,电子邮件触发器会让我们的团队知道设置新的员工帐户。
谁能帮帮我?我不知道如何进行字符串匹配或将其专门发送给固定的电子邮件收件人。我已经安装了 Python 和 gspread 和 gdata,感觉我把它复杂化了,但是几天来没有任何进展......
请帮忙!
提前致谢,
杰米
【问题讨论】:
标签:
google-apps-script
google-sheets
【解决方案1】:
这里的答案取决于电子表格如何获取其数据。
如果数据是通过表单获取的,您可以简单地创建一个函数并设置一个提交时触发器。
代码:
function formSubmit(e) {
//Column F is the 6th colmn so you want the 5th value from the array (array starts with 0)
if (e.values[5] == "ABC"){
//read: https://developers.google.com/apps-script/class_gmailapp#sendEmail
GmailApp.sendEmail("bla@bla.com","Subject","Content")
}
}
然后转到您的脚本触发器并将此函数添加到 onSubmit 触发器。
如果有人在电子表格中输入数据,则很难找出它在哪一列中
试试这样的:
function onEdit(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
if (rangeArray = ss.getActiveCell().getRow() == 6){
if (ss.getActiveCell().getValue() == "ABC"){
GmailApp.sendEmail(recipient, subject, body, options)
//etcetc
}
}
}
现在您使用 onEdit 功能,您不需要在这里设置触发器。
希望这会有所帮助!
致以诚挚的问候,
托马斯·范拉图姆