[英]Google Apps Script Timing Out - Appending 7 sheets
我有一个脚本达到了Google脚本超时限制-它会将7张纸附加在一起,每张纸包含大约300-500行,但是每次都超时。 有什么方法可以优化脚本以防止脚本失败?
function concatAllSheets()
{
var includedSheet=['GA_DE','GA_SE','GA_FR', 'GA_IT', 'GA_ES', 'GA_UK', 'GA_NL'];
var ss = SpreadsheetApp.openById("#ID HERE#");
var allSheets=ss.getSheets();
var sheetName='Data'
var mother=ss.insertSheet(sheetName);
for(var i=0;i<allSheets.length;i++)
{
var sht=allSheets[i];
if(includedSheet.indexOf(sht.getName())>-1)
{
var rng=sht.getDataRange();
var rngA=rng.getValues();
for(var j=0;j<rngA.length;j++)
{
var row=rngA[j];
mother.appendRow(row);
}
}
}
}
目前尚不清楚为什么要使用setValues()在1次调用中附加每个工作表的全部内容时,为什么要逐行附加每个工作表
var motherNextRow = 1; // start at row 1
for(var i=0;i<allSheets.length;i++)
{
var sht=allSheets[i];
if(includedSheet.indexOf(sht.getName())>-1)
{
var rng=sht.getDataRange();
var rngA=rng.getValues();
if(rngA.length>0){
mother.getRange(motherNextRow, 1, rngA.length, rngA[0].length).setValues(rngA);
motherNextRow += rngA.length;
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.