下面的代码用于在执行分析脚本之后重新初始化文件。其目标是删除已手动填写的单元格,以进行新的请求。
这个错误是在分析过程结束时得到的,我无法找到问题的根源。
// Before you run the script, please enable Drive API at Advanced Google services.
function resetFile() {//restore previous version of the file
var revisionId = "1"; // Please set the revision ID you want to revert.
var googleDocsFileId = SpreadsheetApp.getActiveSpreadsheet().getId(); // Please set the Google Docs file ID.
var endpoints = Drive.Revisions.get(googleDocsFileId, revisionId).exportLinks;
var keys = Object.keys(endpoints);
for (var i = 0; i < keys.length; i++) {
if (keys[i].indexOf("application/vnd.openxmlformats-officedocument") > -1) {
var endpoint = endpoints[keys[i]] + "&access_token=" + ScriptApp.getOAuthToken();
var mediaData = UrlFetchApp.fetch(endpoint).getBlob();
Logger.log(mediaData.getBytes().length)
Drive.Files.update({}, googleDocsFileId, mediaData);
break;
}
}
}
function resetSource(){//pas nécessaire
var file= SpreadsheetApp.getActiveSpreadsheet().getRangeByName("FileID").getValue();
var fileID = DriveApp.getFileById(file);
fileID.setSharing(DriveApp.Access.PRIVATE, DriveApp.Permission.EDIT);
}更新2022-01-14

发布于 2022-01-15 00:23:51
从您的错误消息,在您的情况下,如何检索第一个现有的修订版本?当这反映在您的脚本中时,如下所示。
发自:
var revisionId = "1";
var googleDocsFileId = SpreadsheetApp.getActiveSpreadsheet().getId();至:
var googleDocsFileId = SpreadsheetApp.getActiveSpreadsheet().getId();
var list = Drive.Revisions.list(googleDocsFileId, { fields: "items(id)" }).items;
if (list.length == 0) throw new Error("No revisions were found.");
var revisionId = list[0].id;参考资料:
发布于 2022-01-13 22:54:31
//在运行脚本之前,请在Advanced服务上启用Drive。
function resetFile() {
//restore previous version of the file var revisionId = "1"; // Please set the revision ID you want to revert.
var googleDocsFileId = SpreadsheetApp.getActiveSpreadsheet().getId();
// Please set the Google Docs file ID.
var endpoints = Drive.Revisions.get(googleDocsFileId, revisionId).exportLinks;
var keys = Object.keys(endpoints);
for (var i = 0; i < keys.length; i++) {
if (keys[i].indexOf("application/vnd.openxmlformats-officedocument") > -1) {
var endpoint = endpoints[keys[i]] + "&access_token=" + ScriptApp.getOAuthToken();
var mediaData = UrlFetchApp.fetch(endpoint).getBlob();
Logger.log(mediaData.getBytes().length)
Drive.Files.update({}, googleDocsFileId, mediaData);
break;
}
}
}
function resetSource() {
//pas nécessaire
var file = SpreadsheetApp.getActiveSpreadsheet().getRangeByName("FileID").getValue();
var fileID = DriveApp.getFileById(file);
fileID.setSharing(DriveApp.Access.PRIVATE, DriveApp.Permission.EDIT);
}https://stackoverflow.com/questions/70702127
复制相似问题