Checkbox 使用带有附件的google apps脚本发送电子邮件,并将复选框标记为“完成”
我试图建立一个脚本,将发送电子邮件的基础上的数据在谷歌电子表格Checkbox 使用带有附件的google apps脚本发送电子邮件,并将复选框标记为“完成”,checkbox,google-apps-script,email-attachments,Checkbox,Google Apps Script,Email Attachments,我试图建立一个脚本,将发送电子邮件的基础上的数据在谷歌电子表格 Column 1 - emailAddress Column 2 - subject Column 3 - body Column 4 - signature Column 5 - fileName (name of the file I'd like to attach, will be different in each case) Column 6 - checkbox (new functionality in G Shee
Column 1 - emailAddress
Column 2 - subject
Column 3 - body
Column 4 - signature
Column 5 - fileName (name of the file I'd like to attach, will be different in each case)
Column 6 - checkbox (new functionality in G Sheets, marked= TRUE, unmarked=FALSE).
目的是只向未标记为已发送的邮件发送电子邮件。脚本完成后,复选框应更改为TRUE以避免重复。
我写了以下脚本,但有两个问题:
- 如何生成一个文件名变量值,该值将从第5列开始编码
- 如何强制程序将复选框的状态更改为TRUE并忽略那些已经为TRUE的复选框
function Email() {
var rng = SpreadsheetApp.getActiveSheet().getActiveRange()
var sheet = SpreadsheetApp.getActiveSheet();
var data = rng.getValues();
for (i in data)
{
var rowData = data[i];
var checkbox = data[5]
var file = DriveApp.getFilesByName(data[4])
var emailAddress = rowData[0];
var body = rowData[2];
var subject = rowData[1];
var signature = rowData[3];
var message = body + '\n\n'+ signature;
if(checkbox is != 'TRUE')
{
GmailApp.sendEmail(emailAddress,subject,message,
{
attachments: [file.next().getAs(MimeType.PDF)]
}
);
cell.setValue("TRUE");
}
}
}
如何生成文件名变量值,并从第5列开始编码? 创建变量var fileName。出于唯一性目的,只需在1、2等末尾添加一个计数器,使其看起来像fileName1、fileName2等 如何强制程序将复选框的状态更改为TRUE并忽略已为TRUE的复选框? 使用double for循环,因为使用图纸与使用类似。在创建if语句的内部: 如果(is!=“TRUE”){ 单元格(“真”) }
希望你能从伪代码中得到这个想法。你好,noogui,谢谢你的快速回答,但是我仍然有代码方面的问题。你能检查一下,告诉我怎么解决吗?1) 缺失)后状态。(第15行,文件“代码”)2)附件的名称存储在单元格数据[4]中。我怎么能提到这一点?我更改了上面的代码。你能看看这个吗?