0

我正在尝试设置一个 Google Apps 脚本,以便每周自动将 Google 幻灯片文档的副本保存到 Drive 文件夹中。我意识到幻灯片总是被备份,但我想保存一份不断发展的文档的每周副本以供参考。

这是我要运行的脚本:

function makeCopy() {

  var timeZone = Session.getScriptTimeZone();

// generates the timestamp and stores in variable formattedDate as
// year-month-date hour-minute-second
  var formattedDate = Utilities.formatDate(new Date(), timeZone , "yyyy-MM-dd' 'HH:mm:ss");

// gets the name of the original file and appends the word "copy"
// followed by the timestamp stored in formattedDate
  var name = DocumentApp.getActiveDocument().getName() + " Copy " + formattedDate;

// gets the destination folder by their ID. REPLACE
// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx with your folder's ID
// that you can get by opening the folder in Google Drive
// and checking the URL in the browser's address bar
  var destination = DriveApp.getFolderById("MyFolderID");

// gets the current Google Sheet file
  var file = DriveApp.getFileById(DocumentApp.getActiveDocument().getId())

// makes copy of "file" with "name" at the "destination"
  file.makeCopy(name, destination);
}

有什么想法我哪里出错了吗?

4

1 回答 1

0

您使用DocumentApp的是 Google 文档,而不是幻灯片。相反,它应该是SlidesApp.getActivePresentation().

如果您想通过使用.getId().getFileById()后跟.getParents()DriveApp将它们保持在一起,您也可以使用获取当前文件夹而不是硬编码文件夹 ID 。尽管如果您想将副本保存在单独的文件夹中,请忽略这一点。

于 2018-01-04T05:25:52.183 回答