[英]Attach multiple files - Google Sheets/Gmail/Drive
我目前有一個腳本來創建電子郵件草稿,並在其中附加文件。 當前,該腳本不適用於多個文件附件,如果沒有附件,該腳本也不起作用。
關於如何獲得(1)和(2)的任何提示[下面]
更新以獲取更多信息:
主要目的是在Col [3]中添加多個文件名,並使用Col [3]中提供的文件名將文件附加到草稿中。 例如:如果我在Col [3]中輸入以下內容:“ test.pdf,test2.pdf”,它將為該特定草稿附加文件“ test.pdf”和“ test2.pdf”。 目前,腳本確實將單個文件附加到草稿,但是如果我輸入多個用逗號分隔的文件名,則根本不會創建草稿。
我已附上運行腳本時電子表格的外觀的屏幕截圖(我目前無法嵌入圖片):
當我使用屏幕截圖中的信息運行腳本時,第二行根本不會創建草稿,第三行會創建帶有附件的草稿,而第四行根本不會創建草稿。
是否可以創建草稿並使用逗號分隔的文件名附加多個文件,並且在Col [3]中的某些單元格為空時還可以創建草稿?
TLDR:
如何將多個文件附加到單個草稿
如何創建沒有任何附件的草稿
function SaveDrafts() { var sheet = SpreadsheetApp.getActiveSheet(); var startRow = 2; var rows = 1000; var dataRange = sheet.getRange(startRow, 1, rows, 5); var data = dataRange.getValues(); for (i in data) { var row = data[i]; var emailAddress = row[0]; var subject = row[1]; var message = row[2]; var pdfName = row[3]; var cc = row[4]; var list = DriveApp.getFilesByName(pdfName); if (list.hasNext()) { var File = list.next(); GmailApp.createDraft(emailAddress, subject, message, { cc: cc, attachments: [File] }); } } }
更新:首先,我對pdfName
單元格的值執行了split()
,因此可以一次搜索並添加一個文件。
草稿創建僅在有文件的情況下運行,因為它位於if list
中,沒有文件表示它不會運行。
我從中拉出了它,並創建了一個list
插入器和一個文件數組,該數組可以提供給createDraft()
函數。 如果DriveApp.getFilesByName(pdfName)
返回多個文件,則迭代器允許將多個文件添加到files
數組。
function SaveDrafts() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2;
var rows = 1000;
var dataRange = sheet.getRange(startRow, 1, rows, 5);
var data = dataRange.getValues();
for (i in data) {
var row = data[i];
var emailAddress = row[0];
var subject = row[1];
var message = row[2];
var pdfName = row[3].split(','); //split the values taken from cell into array
var cc = row[4];
var files = []; //initialize files as empty array.
for(var j in pdfName){ //run through cell values and perform search
var results = DriveApp.getFilesByName(pdfName[j]); //Perform the search,results is a FileIterator
while(results.hasNext()) { //Interate through files found and add to attachment results
files.push(results.next()); //Add files to array
}
}
GmailApp.createDraft(emailAddress, subject, message, {
cc: cc,
attachments: files //the attachments option takes our files array
});
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.