免责声明:我是编程新手,请耐心:)
我正在尝试将带有PDF文件附件的电子邮件发送到Google电子表格上的其他电子邮件联系人。通过在Google驱动器上查找该文件名,每个附件对于每个名称都必须是唯一的。有人可以帮忙这些额外的代码吗?
我目前拥有的代码正在发送带有自定义消息和文件附件的电子邮件,并在脚本结束运行后将每封电子邮件标记为C列中发送的电子邮件。但是,我想向每个电子邮件地址发送不同的PDF附件,最好是编写一些代码以获取D列中的“投资者名称”,在Google云端硬盘中查找包含该名称的文件,并附加该文件到要发送的电子邮件。
因此,我需要通过每个相应单元格中的每个名称来获取PDF文件,而不是如下所示(我相信):
var file = DriveApp.getFilesByName('SHARE CERTIFICATE#60-JOHN APPLE.pdf');
// This constant is written in column C for rows for which an email
// has been sent successfully.
var EMAIL_SENT = "EMAIL_SENT";
function sendEmails2() {
var sheet = Spreadsheetapp.getactiveSheet();
var startRow = 2; // First row of data to process
var numRows = 250; // Number of rows to process
// Fetch the range of cells A2:B3
var dataRange = sheet.getRange(startRow,1,numRows,250)
// Fetch values for each row in the Range.
var data = dataRange.getvalues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var emailaddress = row[0]; // First column
var message = row[1]; // Second column
var emailSent = row[2]; // Third column
if (emailSent != EMAIL_SENT) { // Prevents sending duplicates
var subject = "Sending emails from a Spreadsheet";
var file = DriveApp.getFilesByName('SHARE CERTIFICATE #60 - JOHN APPLE.pdf');
if (file.hasnext()) {
MailApp.sendEmail(emailaddress,subject,message,{
attachments: [file.next().getas(MimeType.PDF)],name: 'Custom email Team'
});
sheet.getRange(startRow + i,3).setvalue(EMAIL_SENT);
// Make sure the cell is updated right away in case the script is interrupted
Spreadsheetapp.flush();
}
}
}
}
我期望的最终结果是: -将带有消息和主题的电子邮件发送到不同的电子邮件地址 -附加一个PDF文件,其文件名与每个电子邮件收件人的姓名
非常感谢,这将极大地帮助您! :)