我需要编写一个脚本,允许我将pdf上传到Google表格中的单个单元格,并通过pdf向我发送电子邮件。据我所知,没有办法将pdf或图像文件上传到Google表格,所以我想使这项工作唯一的方法是将其上传到google drive文件夹,然后将链接粘贴到pdf中。单元,然后通过电子邮件将链接发送给我。
我已经搜索了很长时间,但还没有找到任何解决方案。
Google有自己的教程,可以从工作表发送邮件。我使用了以下代码:
var SENT = 'sent';
function sendEmails2() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2;
var numRows = 100;
var dataRange = sheet.getRange(startRow, 1, numRows, 7);
var data = dataRange.getValues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var emailAddress = row[3];
var message = row[4] + dataRange.getValue();
var Sent = row[6];
if (Sent != SENT) {
var subject = 'Invoice';
MailApp.sendEmail(emailAddress, subject, message);
sheet.getRange(startRow + i, 6).setValue(SENT);
SpreadsheetApp.flush();
}
}
}
这工作正常,我的问题是将文件上传到Google驱动器并将链接粘贴到单元格中。
我假设代码将以这样的开头:
function uploadFile() {
var invoice = 'some local path to pdf file';
var file = {
title: 'Invoice',
mimeType: 'application/pdf'
};
file = Drive.Files.insert(file, invoice);
Logger.log('ID: %s, File size (bytes): %s', file.id, file.fileSize);
}
但是我不确定该往哪个方向走。谁能给我一些提示?
答案 0 :(得分:0)
要使用Google Apps脚本将文件上传到Google云端硬盘,请考虑使用Google Picker。有关详细信息,请参见https://developers.google.com/apps-script/guides/dialogs#file-open_dialogs