打开复制的 google 个幻灯片文件

Open copied google slide file

我想复制一个 "template" Google 幻灯片文件,然后在新创建的文件中修改文本字段。我在打开复制的文件时遇到问题。我是 Google 脚本的新手,发现一些代码似乎应该可以工作,但我遇到了错误。这是代码和错误:

function createDuplicateDocument(sourceId, name) {
    var source = DriveApp.getFileById(sourceId);
    var targetFolder = DriveApp.getFolderById(TARGET_FOLDER);
    var newFile = source.makeCopy(name, targetFolder);
    return DocumentApp.openById(newFile.getId()); 
}
// Document is missing (perhaps it was deleted, or you don't have read access?) (line 35, file "Code") 

var SOURCE_TEMPLATE = "1OUztWdzh..."; // Google Doc id from the document template (Get id from the URL)
var TARGET_FOLDER = "1xsbW_pjZuN..."; //"Sent_Certificates"; // In which Google Drive we toss the target documents
var name = TRAINING_DATE + "_" + TRAINING_TYPE + "_" +TRAINING_USER
var filTxtFile = createDuplicateDocument(SOURCE_TEMPLATE, name);
replaceString(filTxtFile, "TRAINING_USER", TRAINING_USER);

一旦我 运行 代码,我就可以在正确的文件夹中看到新文件,但由于某种原因,脚本看不到它。 我还测试了将函数代码与我的代码内联放置,但我无法打开复制的文件。我只是收到一条错误消息,指出文件丢失。我已确保退出所有其他帐户,甚至设置了一个睡眠计时器以查看它是否执行得太快。

最终我的目标是使用 Google 表格中的用户信息填写培训证书。

为什么会出现该错误以及如何解决。 谢谢

因为您正在处理幻灯片文件,所以您必须使用 SlidesApp 打开它,而不是使用 DocumentApp。 DocumentApp 仅处理 Google 个文档,这就是您收到此错误的原因。

return SlidesApp.openById(newFile.getId());