繁体   English   中英

Google Apps脚本超时-追加7张

[英]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.

 
粤ICP备18138465号  © 2020-2025 STACKOOM.COM