【问题标题】:Google sheets - Upload pdf to drive and send emailGoogle 表格 - 将 pdf 上传到驱动器并发送电子邮件
【发布时间】:2018-12-08 05:53:44
【问题描述】:

我需要编写一个脚本,允许我将 pdf 上传到 google 表格中的单个单元格,然后将包含 pdf 的电子邮件发送给我。据我所知,没有办法将 pdf 或图像文件上传到谷歌表格,所以我想完成这项工作的唯一方法是将其上传到谷歌驱动器文件夹,然后将链接粘贴到 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();
    }
  }
}

这很好用,我的问题是将文件上传到谷歌驱动器并将链接粘贴到单元格中。

我假设代码将以这样的开头:

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);
}

但是我不确定该往哪个方向发展。谁能给我一些建议?

【问题讨论】:

    标签: javascript google-apps-script google-sheets


    【解决方案1】:

    要使用 Google Apps 脚本将文件上传到 Google Drive,请考虑使用 Google Picker。详情见https://developers.google.com/apps-script/guides/dialogs#file-open_dialogs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-14
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      • 2020-08-11
      • 1970-01-01
      相关资源
      最近更新 更多