我的脚本对于前几百个工作簿而言似乎运行良好,但是尽管它继续循环并用“ x”标记,但似乎仍无法工作。更具体地说,它不是从工作表中删除保护并更新指定的3个值,而是使用“ x”更新删除列表。在超时之前,它“大约”记录了1000条记录,所以我希望这1000条记录中的每条记录都使用指定的值进行更新。
function fix() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('delete_list');
for(var x = 1; x<=5000; x++){
var wbid = sh.getRange(x,1).getValue()
var file = DriveApp.getFileById(wbid)
var sheet = SpreadsheetApp.open(file).getSheetByName('1. Planned Acres')
var sheet1 = SpreadsheetApp.open(file).getSheetByName('2. Seed')
var protections = sheet.getProtections(SpreadsheetApp.ProtectionType.RANGE)
for (var i = 0; i < protections.length; i++) {
var protection = protections[i];
if (protection.canEdit()) {
protection.remove();
}
}
sheet.getRange('E43').setValue(0);
sheet.getRange('D4').setValue('=D4-E35');
sheet1.getRange('F9').setValue('=if(\'REPORT - ROI ANALYSIS\'!C19=True,\'REPORT - ROI ANALYSIS\'!A41,\"\")');
sh.getRange(x,2).setValue('x');
};
};