Я ввел следующий код, отправленный ziganotschka на https://stackoverflow.com/a/57865441/12252776:
function myFunction() {
var oldLink="http://www.googledoclink1.com";
var newLink="http://www.googledoclinkA.com";
var oldLink2="http://www.googledoclink2.com";
var newLink2="http://www.googledoclinkB.com";
var files = DriveApp.getFiles(); // Note: this gets *every* file in your Google Drive
while (files.hasNext()) {
var file = files.next();
Logger.log(file.getName());
var doc = DocumentApp.openById(file.getId());
var link=doc.getBody().findText(oldLink).getElement().asText();
var link2=doc.getBody().findText(oldLink2).getElement().asText();
link.setLinkUrl(newLink);
doc.replaceText(oldLink, newLink);
link2.setLinkUrl(newLink2);
doc.replaceText(oldLink2, newLink2);
}
Logger.log("Done")
}
... но я получаю это сообщение об ошибке:
TypeError: Cannot call method "getElement" of null. (line 11, file "Replace Hyperlinks")
Как мне это исправить? Что мне делать?
Я также просто хотел извлечь файлы из папки, а не все файлы на моем Google Диске, поэтому я заменил
var files = DriveApp.getFiles();
на
var files = DriveApp.getFolderById("insert folder ID").getFiles();
Это сработало бы, верно?
Спасибо, Лорен